返回目录:excel表格制作
ctrl+;,为输入当前日期
ctrl+shift+;,为输入当前时间
需要用VBA,以Excel2007为例,方法如下;
1、打开Excel,点击“开发工具”选项卡,在“控件”e69da5e887aa7a686964616f362组别,找到并点击“插入”,在下拉列表中,点选右下角的“其它控件”,如下图:
2、在弹出的“其他控件”对话框,拖动滚动条到下方,鼠标左键选择“日历控件12.0”,点击“确定”
3、回到工作表,用鼠标左键拖动出来一个日历控件,调整大小和位置,如下图:
4、鼠标左键在“日历控件”上双击,调出VBA编辑器,把下面这段代码复制粘贴到里面
Private Sub Calendar1_Click()
ActiveCell = Format(Calendar1.Value, "yyyy-mm-dd")
Me.Calendar1.Visible = False
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Column = 1 Then
If Target.Row > 1 Then
With Me.Calendar1
.Visible = True
.Top = Target.Top + Target.Height
.Left = Target.Left + Target.Width
.Value = Date
End With
Else
Me.Calendar1.Visible = False
End If
Else
Me.Calendar1.Visible = False
End If
End Sub
其中“ If Target.Column = 1 Then
If Target.Row > 1 Then“为点击第一列即A列除第一行外弹出日历控件,可根据需要进行更改,然后关闭VBA代码编辑器回到工作表
5、鼠标左键点击A2即弹出”日历控件“,根据需要在”控件“上点击要输入的日期即可
第一首先要用 Private Sub Worksheet_Change(ByVal Target As Range) 触发事件。 第二要用到日期控件: 方法一:先将控件工具箱调出来。视图-工具栏-控件工具箱。 在控件工具箱上最下面那个按钮是其他控件,打开它,找到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. 方法2:在EXCEL窗口中执行“ 视图 ”→“e799bee5baa6e79fa5e98193e59b9ee7ad94335 工具栏 ”→“ 控件工具箱 ”添加“ 日历控件 11.0 ”
看这百个帖度子问
http://blog.sina.com.cn/s/blog_686b9dcc0100n7y6.html
代码用答下面专的属
Private Sub Calendar1_Click()
ActiveCell = Calendar1.Value
Me.Calendar1.Visible = False
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Address = "$F$3" Then
Me.Calendar1.Visible = True
Else
Me.Calendar1.Visible = False
End If
End Sub