目录
在Excel中,经常需要输入日期。为保证输入正确,可以通过一个日历控件进行输入。
在工作表中添加DTPicker控件,并隐藏。在工作表中添加工作表SelectionChange事件,在事件中判断Target参数所指的单元格,当为特定单元格时显示DTPicker控件,并调整位置至当前单元格处,否则隐藏控件。然后添加DTPicker控件的Change事件,将DTPicker的值赋值给活动单元格。
码
Option Explicit
'工作表激活时隐藏日历控件
Private Sub Worksheet_Activate()
Me.DTPicker21.Visible = False
End Sub
'日历控件的 change事件
Private Sub DTPicker21_Change()
ActiveCell.Value = Me.DTPicker21.Value
End Sub
'工作表的SelectionChange事件
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Me.DTPicker21.Visible = False
'选中一个单元格则继续
If Target.Count = 1 Then
'选中A列及第2行以下的单元格继续
If Target.Column = 1 And Target.Row > 1 Then
Me.DTPicker21.Visible = True
Me.DTPicker21.Top = ActiveCell.Top
Me.DTPicker21.Left = ActiveCell.Left + ActiveCell.Width
End If
End If
End Sub
DTPicker控件
DTPicker控件是VBA中常用的日期控件,该控件由日期输入框和日期选择窗口两部分组成,如图。使用该控件,用户可以方便地选择日期和时间。
DTPicker控件的时间和日期的切换
DTPicker控件可以用来输入日期和时间,可以通过Format属性来改变其输入