Function my_date_selection(ByVal d As Variant) As Date
If Not IsDate(d) Then GoTo L1 'Exit Function
If IsDate(d) = True Then
Load calendar
calendar.SelectedDayNumber = Day(d)
calendar.SelectedMonthNumber = Month(d)
calendar.SelectedYearNumber = Year(d)
End If
L1:
calendar.Show
If calendar.SelectedDayNumber = 0 And _
calendar.SelectedMonthNumber = 0 And _
calendar.SelectedYearNumber = 0 Then
my_date_selection = Date
' user click on the cancel button in the calendar control therefore do nothing
Else
my_date_selection = DateSerial(calendar.SelectedYearNumber, _
calendar.SelectedMonthNumber, _
calendar.SelectedDayNumber)
' my_date_selection = Format(my_date_selection, "DD-MMM-YYYY")
End If
' If my_date_selection < Date Then MsgBox "Invalid Date.": GoTo l1
Unload calendar
End Function
我自己解决了。非常感谢你:) 如何关闭它? – sameerj
发布答案并接受它;) – ZygD