在win7旗舰版的EXCEL2010版中,插入日期控件的操作方法:
1、选择excel的“文件”选项,然后选中“选项”:
2、再选择“自定义功能区”,查看自定义功能区(B)下设框的“主选项卡”,找到“开发工具”勾选后按“确定”,
关闭EXCEL。
3、下载“Mscomct2.OCX”控件,网上有很多,给个下载链接:https://www.sodocs.net/doc/2517114705.html,/f/22164687.html
下载后把文件“Mscomct2.OCX”放在系统盘下设文件夹中:C:\windows\system32;
在C:\windows\system32\cmd.exe上点右键,使用“以管理员身份运行”,打开CMD时输入“regsvr32.exe Mscomct2.ocx”,按回车,系统提示已成功注册。
4、打开EXCEL,选择“开发工具”选项卡,选择“插入”,选择“其他控件”,弹出其他控件的对话框,选择“micorsoft
Date and Time Picker Control, version 6.0”,按“确定”。如果没有在找到“micorsoft Date and Time Picker Control, version 6.0”,就选择“注册自定义控件”,查找到“Mscomct2.OCX”文件注册一下即可。
’
5、点“确定”后,会出现画形状图时出现的“+”,鼠标左键拖动画出想要的形状后松手,一般画个单元格大小的
方块居多,比如:
6、在“开发工具”选项卡中选中“设计模式”,选中并双击刚才插入的日期框,出现如下设计框:
7、在代码输入框中加入如下代码后“保存”,一直“确定”即可。(注意:Target.Column = 4里的是指D列就是固
定的4列,G列是7列,而不是sheet里D,G列真实对应的第几列):
Private Sub Calendar1_Click()
ActiveCell = Format(Calendar1.Value, "yyyy-mm-dd") '设置日期格式,此工作可以直接通过设置某列单元格格式一次性完成
Calendar1.Visible = False '单击日历控件后隐藏之
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Column = 4 Then 'D列为日期输入列,只对应excel的字母列,例如D对应4,
'G对应7,不是实际的显示列对应的数字
Calendar1.Left = Target.Left + Target.Width '设置日历控件弹出后的位置
Calendar1.Top = Target.Top + Target.Height '同上
Calendar1.Value = Date '设置默认日期为系统日期
Calendar1.Visible = True '使日历控件可见
ElseIf Target.Column = 5 Then 'E列为日期输入列
Calendar1.Left = Target.Left + Target.Width
Calendar1.Top = Target.Top + Target.Height
Calendar1.Value = Date
Calendar1.Visible = True
ElseIf Target.Column = 6 Then 'F列为日期输入列
Calendar1.Left = Target.Left + Target.Width
Calendar1.Top = Target.Top + Target.Height
Calendar1.Value = Date
Calendar1.Visible = True
Else
Calendar1.Visible = False '单击其他列时隐藏日历控件
End If
End Sub
8、关闭ECXEL,重新打开后,点中插入时间框的下拉箭头,即可看到如下效果:
9、如希望其他单元格也能出现这样的格式,使用复制、粘贴即可完成。