Sub CopyDate()
Dim MonthNum As Byte, DayNum As Byte, bW As Byte
Dim StrC As String, CellAddress As String
Dim FirstDay As Date
MonthNum = InputBox("Select MonthNum:", , CStr(Month(Date)))
FirstDay = DateSerial(Year(Date), MonthNum, 1)
DayNum = DateSerial(Year(Date), MonthNum + 1, 1) - FirstDay
StrC = Choose(Weekday(FirstDay), "H", "B", "C", "D", "E", "F", "G") & "2"
Sheets("T" & MonthNum).Select: Range(StrC).Select
For bW = 1 To DayNum
Range(StrC).Offset(0, bW - 1).Value = DateSerial(Year(Date), MonthNum, bW)
CellAddress = Range(StrC).Offset(0, bW - 1).Address
Range(StrC).Offset(1, bW - 1) = "=IF(WEEKDAY(" & CellAddress & ")=1," & Chr(34) & _
"CN" & Chr(34) & "," & Chr(34) & "T" & Chr(34) & Chr(38) & "WEEKDAY(" & CellAddress & "))"
'=IF(WEEKDAY(E2)=1,"CN","T" & WEEKDAY(E2))
Next bW
End Sub