EXCEL怎么设置日历控件,且运用与一行或几列(注:是在单元格中下拉可选择)
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了EXCEL怎么设置日历控件,且运用与一行或几列(注:是在单元格中下拉可选择)相关的知识,希望对你有一定的参考价值。
1、打开需要编辑的excel文档,然后点击右上角的“开发工具”菜单。
2、这时会打开开发工具标签,在工具栏上点击“插入”图标。
3、在打开的插入下拉菜单中点击“更多工具”按钮。
4、这时会打开其它控件窗口,在窗口中找到Microsoft data and Time Picker Control,Version 6.0一项,然后点击确定按钮。
5、这时在Exce文档中点击一下鼠标,就可以把Excel日历控件插入到文档中了哦。这时选中刚刚插入的日历控件。
6、这时选中刚刚插入的日历控件,然后点击一下工具栏上的“设计模式”按钮,就可以使用了。
参考技术A Excel中使用日期控件方法详解1. 插入日期控件
①. 打开需要插入日期控件的工作薄,依次点击【视图】【工具栏】【控件工具箱】,调出控件工具栏。
②. 点击控件工具栏中的〖其他控件〗 ,选择(Microsoft Date and Time Picker Control,version 6.0)控件。
③. 在工作表内需要填写日期的单元格中画出日期控件图标,调整大小与单元格一致。
2. 编辑代码
① 点击控件工具栏中的〖查看代码〗 ,进入代码编辑页面,编辑如下代码:
Option Explicit
Private Sub DTPicker1_Change()
ActiveCell.Value = DTPicker1.Value
DTPicker1.Visible = False
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
With Me.DTPicker1
If Target.Column = 1 And Target.Count = 1 Then
.Visible = True
.Width = Target.Width + 15
.Left = Target.Left
.Top = Target.Top
.Height = Target.Height
Else
.Visible = False
End If
End With
End Sub
【提示】:上列代码中,红色的1表示该控件作用于工作表中第一列,如需调整,直接修改为相应的列数即可;如果需要将该控件作用于某一行,则把代码中Target.Column改为Target.Row即可。
② 关闭代码编辑页面返回工作表,点击控件工具栏中的〖属性〗 ,进入属性编辑页面,调整CheckBox属性为True。
③ 关闭属性编辑页面返回工作表,点击控件工具栏中的〖退出设计模式〗 ,退出控件设计模式。
④ 点击日期控件图标,弹出活动日历,选择需要编辑的日期。至此,工作表中该列所有单元格均能这样快速方便的输入日期了,你可以对该列调整单元格格式以满足自己的需要,调整单元格格式我就不在这里累赘了。
当然,工作表第一行中你可能需要输入标题、表头等内容,你发现该列中除了日期,其他任何内容都无法输入是不是?那你注意到日期控件图标最左边的勾选框了吗?点击勾选框去掉小勾,图标变成灰色,这样该单元格就可以输入其他内容了。OK?
还是关于日历控件的使用问题(VBA)
在网上学习了一会,代码改为: Private Sub Calendar1_Click() ActiveCell = Calendar1.Value Me.Calendar1.Visible = False End Sub Private Sub Worksheet_SelectionChange(ByVal Target As Range) Calendar1.Visible = True Calendar1.Left = Target.Left + Target.Width '设置日历控件弹出的列位置 Calendar1.Top = Target.Top + Target.Height '设置日历控件弹出的行位置 Calendar1.Value = Date '设置默认日期为系统日期 'Target.Column=1 ‘为你要显示日历的列号 If Target.Column = 1 And Target.Row <> 1 And Selection.Rows.Count = 1 And Selection.Columns.Count = 1 Then Me.Calendar1.Visible = True If Target.Value <> "" Then Me.Calendar1.Value = Target.Value Else Me.Calendar1.Value = Now() End If Else Me.Calendar1.Visible = False End If End Sub 一列ok了 问题: 1、我还要在13列的单元格里填日期。 2、当选中13列的单元格时,Calendar1控件在选定单元格的左边显示。(选第一列时,在第一列的右边显示) 请大侠帮忙,谢谢
参考技术A 例如dtpicker1text1
=
dtpicker1.dayofweek
'显示日期的星期,
1为星期日
2为星期一
text2
=
dtpicker1.value
'显示显示日期,
.year
年份,月.month
日.day
时.hour。。。。
dtpicker1.format
'日期格式
以上是关于EXCEL怎么设置日历控件,且运用与一行或几列(注:是在单元格中下拉可选择)的主要内容,如果未能解决你的问题,请参考以下文章