短视频自媒体创业
全国咨询微信:4761160

选择日期Excel日历控件将日期插入到指定单元格

发布时间:2013-02-28 15:42:53 人气:

方法1:

先将控件工具箱调出来。视图-工具栏-控件工具箱。
在控件工具箱上最下面那个按钮是其他控件,打开它,找到Microsoft Date and Time Picker Control,
这个就是日历控件。然后在一个单元格上拖画一个框,日历控件就出来了。
然后在控件工具箱上退出设计模式,日历控件就能使用了。

  在你所要用到的单元格内画出,大小要和单元格一样;  
  选中控件,右键单击选择菜单“设置控件格式”,在"属性"选项中选择“大小、位置均随单元格而变”,确定;  
  右键单击控件选择菜单“查看代码”,进入VBA后,键入以下代码:  
   
  Private   Sub   DTPicker1_Change()  
          Sheet1.Cells(1,   1)   =   CStr(DTPicker1)  
  End   Sub  
   
  Private   Sub   DTPicker1_Click()  
          Sheet1.Cells(1,   1)   =   CStr(DTPicker1)  
  End   Sub  
   
  返回到Excel,调整单元格大小使控件完全显示;  
   
  退出设计模式,OK。

方法2:

  在EXCEL窗口中执行“视图”→“工具栏”→“控件工具箱”;弹出如下图对话框;

按上图的操作,找到“日历控件11.0”,之后在EXCEL窗口中使用鼠标左键一拖,拖出如下图的控件;


  上图,我们要实现的结果是:在C列中,无论点击哪个单元格,就弹出日历控件,选择一个日期之后,日期自动插入到单元格;除C列之外,点击其他列的单元格,不会弹出日历选择控件;

  要想实现这样的效果,得使用VBA来实现;

  选择日历控件,鼠标左键双击,进入代码编辑模式;如下图!


  上图中,第一个过程代码就是日历控件所需要的代码,另外,还得需要另外一个代码,在图中按红线圈住部分选择,找到对应的过程,输入如下的VBA代码即可!

  完成之后,直接运行VBA代码,返回EXCEL操作窗口,即可实现效果了!


  如上图,C3单元格已插入了日期,当你选择C列其他单元格时,就弹出日历控件,以供选择,选择完成,即可插入日期了!

  为方便操作,提供源代码:

Private Sub Calendar1_Click()
ActiveCell = Calendar1.Value
Me.Calendar1.Visible = False
End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Column = 1 Then
Me.Calendar1.Visible = True
Else
Me.Calendar1.Visible = False
End If
End Sub

  知识扩展:

  执行上述代码时,可能会遇到创建宏的提示,随便输入宏名,再运行即可!

  可以将上述的代码及EXCEL文件一起保持,以备不时之需,以后你再需要到这种功能,直接打开EXCEL文件即可!

  打开EXCEL文件,运行原来的宏,有可能出现“宏”被禁止运行的提示,解决的方法如下:

  在EXCEL操作中执行“工具”→“”→“安全性”;弹出如下的对话框;


  上图中,选择“安全级”选项卡,将安全设置为“中”即可!之后关闭EXCEL,再打开,就能运行了!

在线客服
联系方式

微信号

4761160

上班时间

周一到周五

二维码
线