For few versions MSCOMCT2.cab isn't working
You can try out the following script
Option Explicit
Dim ThisDay As Date
Dim ThisYear, ThisMth As Date
Dim CreateCal As Boolean
Dim i As Integer
Private Sub D1_Click()
If CBO_AddTime.Value = True Then
Selection.Value = Me.D1.ControlTipText & ":" & Time()
ElseIf CBO_AddTime.Value = False Then
Selection.Value = Me.D1.ControlTipText
End If
End Sub
Private Sub D10_Click()
If CBO_AddTime.Value = True Then
Selection.Value = Me.D10.ControlTipText & ":" & Time()
ElseIf CBO_AddTime.Value = False Then
Selection.Value = Me.D10.ControlTipText
End If
End Sub
Private Sub D11_Click()
If CBO_AddTime.Value = True Then
Selection.Value = Me.D11.ControlTipText & ":" & Time()
ElseIf CBO_AddTime.Value = False Then
Selection.Value = Me.D11.ControlTipText
End If
End Sub
Private Sub D12_Click()
If CBO_AddTime.Value = True Then
Selection.Value = Me.D12.ControlTipText & ":" & Time()
ElseIf CBO_AddTime.Value = False Then
Selection.Value = Me.D12.ControlTipText
End If
End Sub
Private Sub D13_Click()
If CBO_AddTime.Value = True Then
Selection.Value = Me.D13.ControlTipText & ":" & Time()
ElseIf CBO_AddTime.Value = False Then
Selection.Value = Me.D13.ControlTipText
End If
End Sub
Private Sub D14_Click()
If CBO_AddTime.Value = True Then
Selection.Value = Me.D14.ControlTipText & ":" & Time()
ElseIf CBO_AddTime.Value = False Then
Selection.Value = Me.D14.ControlTipText
End If
End Sub
Private Sub D15_Click()
If CBO_AddTime.Value = True Then
Selection.Value = Me.D15.ControlTipText & ":" & Time()
ElseIf CBO_AddTime.Value = False Then
Selection.Value = Me.D15.ControlTipText
End If
End Sub
Private Sub D16_Click()
If CBO_AddTime.Value = True Then
Selection.Value = Me.D16.ControlTipText & ":" & Time()
ElseIf CBO_AddTime.Value = False Then
Selection.Value = Me.D16.ControlTipText
End If
End Sub
Private Sub D17_Click()
If CBO_AddTime.Value = True Then
Selection.Value = Me.D17.ControlTipText & ":" & Time()
ElseIf CBO_AddTime.Value = False Then
Selection.Value = Me.D17.ControlTipText
End If
End Sub
Private Sub D18_Click()
If CBO_AddTime.Value = True Then
Selection.Value = Me.D18.ControlTipText & ":" & Time()
ElseIf CBO_AddTime.Value = False Then
Selection.Value = Me.D18.ControlTipText
End If
End Sub
Private Sub D19_Click()
If CBO_AddTime.Value = True Then
Selection.Value = Me.D19.ControlTipText & ":" & Time()
ElseIf CBO_AddTime.Value = False Then
Selection.Value = Me.D19.ControlTipText
End If
End Sub
Private Sub D2_Click()
If CBO_AddTime.Value = True Then
Selection.Value = Me.D2.ControlTipText & ":" & Time()
ElseIf CBO_AddTime.Value = False Then
Selection.Value = Me.D2.ControlTipText
End If
End Sub
Private Sub D20_Click()
If CBO_AddTime.Value = True Then
Selection.Value = Me.D20.ControlTipText & ":" & Time()
ElseIf CBO_AddTime.Value = False Then
Selection.Value = Me.D20.ControlTipText
End If
End Sub
Private Sub D21_Click()
If CBO_AddTime.Value = True Then
Selection.Value = Me.D21.ControlTipText & ":" & Time()
ElseIf CBO_AddTime.Value = False Then
Selection.Value = Me.D21.ControlTipText
End If
End Sub
Private Sub D22_Click()
If CBO_AddTime.Value = True Then
Selection.Value = Me.D22.ControlTipText & ":" & Time()
ElseIf CBO_AddTime.Value = False Then
Selection.Value = Me.D22.ControlTipText
End If
End Sub
Private Sub D23_Click()
If CBO_AddTime.Value = True Then
Selection.Value = Me.D23.ControlTipText & ":" & Time()
ElseIf CBO_AddTime.Value = False Then
Selection.Value = Me.D23.ControlTipText
End If
End Sub
Private Sub D24_Click()
If CBO_AddTime.Value = True Then
Selection.Value = Me.D24.ControlTipText & ":" & Time()
ElseIf CBO_AddTime.Value = False Then
Selection.Value = Me.D24.ControlTipText
End If
End Sub
Private Sub D25_Click()
If CBO_AddTime.Value = True Then
Selection.Value = Me.D25.ControlTipText & ":" & Time()
ElseIf CBO_AddTime.Value = False Then
Selection.Value = Me.D25.ControlTipText
End If
End Sub
Private Sub D26_Click()
If CBO_AddTime.Value = True Then
Selection.Value = Me.D26.ControlTipText & ":" & Time()
ElseIf CBO_AddTime.Value = False Then
Selection.Value = Me.D26.ControlTipText
End If
End Sub
Private Sub D27_Click()
If CBO_AddTime.Value = True Then
Selection.Value = Me.D27.ControlTipText & ":" & Time()
ElseIf CBO_AddTime.Value = False Then
Selection.Value = Me.D27.ControlTipText
End If
End Sub
Private Sub D28_Click()
If CBO_AddTime.Value = True Then
Selection.Value = Me.D28.ControlTipText & ":" & Time()
ElseIf CBO_AddTime.Value = False Then
Selection.Value = Me.D28.ControlTipText
End If
End Sub
Private Sub D29_Click()
If CBO_AddTime.Value = True Then
Selection.Value = Me.D29.ControlTipText & ":" & Time()
ElseIf CBO_AddTime.Value = False Then
Selection.Value = Me.D29.ControlTipText
End If
End Sub
Private Sub D3_Click()
If CBO_AddTime.Value = True Then
Selection.Value = Me.D3.ControlTipText & ":" & Time()
ElseIf CBO_AddTime.Value = False Then
Selection.Value = Me.D3.ControlTipText
End If
End Sub
Private Sub D30_Click()
If CBO_AddTime.Value = True Then
Selection.Value = Me.D30.ControlTipText & ":" & Time()
ElseIf CBO_AddTime.Value = False Then
Selection.Value = Me.D30.ControlTipText
End If
End Sub
Private Sub D31_Click()
If CBO_AddTime.Value = True Then
Selection.Value = Me.D31.ControlTipText & ":" & Time()
ElseIf CBO_AddTime.Value = False Then
Selection.Value = Me.D31.ControlTipText
End If
End Sub
Private Sub D32_Click()
If CBO_AddTime.Value = True Then
Selection.Value = Me.D32.ControlTipText & ":" & Time()
ElseIf CBO_AddTime.Value = False Then
Selection.Value = Me.D32.ControlTipText
End If
End Sub
Private Sub D33_Click()
If CBO_AddTime.Value = True Then
Selection.Value = Me.D33.ControlTipText & ":" & Time()
ElseIf CBO_AddTime.Value = False Then
Selection.Value = Me.D33.ControlTipText
End If
End Sub
Private Sub D34_Click()
If CBO_AddTime.Value = True Then
Selection.Value = Me.D34.ControlTipText & ":" & Time()
ElseIf CBO_AddTime.Value = False Then
Selection.Value = Me.D34.ControlTipText
End If
End Sub
Private Sub D35_Click()
If CBO_AddTime.Value = True Then
Selection.Value = Me.D35.ControlTipText & ":" & Time()
ElseIf CBO_AddTime.Value = False Then
Selection.Value = Me.D35.ControlTipText
End If
End Sub
Private Sub D36_Click()
If CBO_AddTime.Value = True Then
Selection.Value = Me.D36.ControlTipText & ":" & Time()
ElseIf CBO_AddTime.Value = False Then
Selection.Value = Me.D36.ControlTipText
End If
End Sub
Private Sub D37_Click()
If CBO_AddTime.Value = True Then
Selection.Value = Me.D37.ControlTipText & ":" & Time()
ElseIf CBO_AddTime.Value = False Then
Selection.Value = Me.D37.ControlTipText
End If
End Sub
Private Sub D38_Click()
If CBO_AddTime.Value = True Then
Selection.Value = Me.D38.ControlTipText & ":" & Time()
ElseIf CBO_AddTime.Value = False Then
Selection.Value = Me.D38.ControlTipText
End If
End Sub
Private Sub D39_Click()
If CBO_AddTime.Value = True Then
Selection.Value = Me.D39.ControlTipText & ":" & Time()
ElseIf CBO_AddTime.Value = False Then
Selection.Value = Me.D39.ControlTipText
End If
End Sub
Private Sub D4_Click()
If CBO_AddTime.Value = True Then
Selection.Value = Me.D4.ControlTipText & ":" & Time()
ElseIf CBO_AddTime.Value = False Then
Selection.Value = Me.D4.ControlTipText
End If
End Sub
Private Sub D40_Click()
If CBO_AddTime.Value = True Then
Selection.Value = Me.D40.ControlTipText & ":" & Time()
ElseIf CBO_AddTime.Value = False Then
Selection.Value = Me.D40.ControlTipText
End If
End Sub
Private Sub D41_Click()
If CBO_AddTime.Value = True Then
Selection.Value = Me.D41.ControlTipText & ":" & Time()
ElseIf CBO_AddTime.Value = False Then
Selection.Value = Me.D41.ControlTipText
End If
End Sub
Private Sub D42_Click()
If CBO_AddTime.Value = True Then
Selection.Value = Me.D42.ControlTipText & ":" & Time()
ElseIf CBO_AddTime.Value = False Then
Selection.Value = Me.D42.ControlTipText
End If
End Sub
Private Sub D5_Click()
If CBO_AddTime.Value = True Then
Selection.Value = Me.D5.ControlTipText & ":" & Time()
ElseIf CBO_AddTime.Value = False Then
Selection.Value = Me.D5.ControlTipText
End If
End Sub
Private Sub D6_Click()
If CBO_AddTime.Value = True Then
Selection.Value = Me.D6.ControlTipText & ":" & Time()
ElseIf CBO_AddTime.Value = False Then
Selection.Value = Me.D6.ControlTipText
End If
End Sub
Private Sub D7_Click()
If CBO_AddTime.Value = True Then
Selection.Value = Me.D7.ControlTipText & ":" & Time()
ElseIf CBO_AddTime.Value = False Then
Selection.Value = Me.D7.ControlTipText
End If
End Sub
Private Sub D8_Click()
If CBO_AddTime.Value = True Then
Selection.Value = Me.D8.ControlTipText & ":" & Time()
ElseIf CBO_AddTime.Value = False Then
Selection.Value = Me.D8.ControlTipText
End If
End Sub
Private Sub D9_Click()
If CBO_AddTime.Value = True Then
Selection.Value = Me.D9.ControlTipText & ":" & Time()
ElseIf CBO_AddTime.Value = False Then
Selection.Value = Me.D9.ControlTipText
End If
End Sub
Private Sub Frame1_Click()
End Sub
Private Sub UserForm_Initialize()
Application.EnableEvents = False
ThisDay = Date
ThisMth = Format(ThisDay, "MM")
ThisYear = Format(ThisDay, "YYYY")
For i = 1 To 12
CB_Month.AddItem Format(DateSerial(Year(Date), Month(Date) + i, 0), "mm")
Next
CB_Month.ListIndex = Format(Date, "mm") - Format(Date, "mm")
For i = -10 To 50
If i = 1 Then CB_Year.AddItem Format((ThisDay), "yyyy") Else CB_Year.AddItem _
Format((DateAdd("yyyy", (i - 1), ThisDay)), "yyyy")
Next
CB_Year.ListIndex = 11
CreateCal = True
Call Build_Calendar
Application.EnableEvents = True
LBLTime.Caption = Time()
LBLDate.Caption = Format(Date)
If CreateCal = True Then
UserForm1.Caption = CB_Month.Value & " " & CB_Year.Value
End If
End Sub
Private Sub Build_Calendar()
For i = 1 To 42
If i < Weekday((CB_Month.Value) & "/1/" & (CB_Year.Value)) Then
Controls("D" & (i)).Caption = Format(DateAdd("d", (i - Weekday((CB_Month.Value) & "/1/" & (CB_Year.Value))), _
((CB_Month.Value) & "/1/" & (CB_Year.Value))), "d")
Controls("D" & (i)).ControlTipText = Format(DateAdd("d", (i - Weekday((CB_Month.Value) & "/1/" & (CB_Year.Value))), _
((CB_Month.Value) & "/1/" & (CB_Year.Value))), "d/mm/yyyy")
ElseIf i >= Weekday((CB_Month.Value) & "/1/" & (CB_Year.Value)) Then
Controls("D" & (i)).Caption = Format(DateAdd("d", (i - Weekday((CB_Month.Value) & "/1/" & (CB_Year.Value))), _
((CB_Month.Value) & "/1/" & (CB_Year.Value))), "d")
Controls("D" & (i)).ControlTipText = Format(DateAdd("d", (i - Weekday((CB_Month.Value) & "/1/" & (CB_Year.Value))), _
((CB_Month.Value) & "/1/" & (CB_Year.Value))), "d/mm/yyyy")
End If
Next
End Sub