✔ 最佳答案
計算任意一天是星期幾
好似條公式錯左甘:
Dim S As Long
Dim X As Long
Dim C As Long
Dim DayArray() As String
Dim YuanDan As Date
DayArray = Split("日,一,二,三,四,五,六", ",")
X = DateTime.Year(Now)
YuanDan = DateTime.DateSerial(DateTime.Year(Now), 1, 1)
X = DateTime.DateDiff("d", YuanDan, Now) +1 '減去後加上今天
S = X - 1 + ((X - 1) / 4) - ((X - 1) / 100) +((X - 1) / 400)+C
MsgBox "今天是星期" & DayArray(S Mod 7) '貌似有些問題
MsgBox "但其實今天是星期" & DayArray (Weekday(Now)) '這個才是對的
閏年平年判斷:
Dim year As Long
year = InputBox("請輸入年份", "潤平年判斷")
If IsNumeric(year) = True And year < 2999 And year > 0 Then
MsgBox year & "是" & IIf(year Mod 4 = 0, IIf(year Mod 100 = 0, IIf(year Mod 400 = 0, "閏年", "平年"), "閏年"), "平年")
End If
讓變數變成陣列的函數”ARRAY”唔知道要做咩:
Dim Mon()
Mon = Array(31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31)
Mon(0)=31
核對特別的日子 (分別輸入年、月、日):
Dim d As Date
Dim days() As String
days = Split("錯誤,日,一,二,三,四,五,六", ",")
On Error GoTo Error_
MyDate = InputBox("請輸入日期,格式是:dd/mm/yyyy", "核對日子")
d = Format(MyDate, "dd/mm/yyyy")
MsgBox MyDate & "是星期" & days(Weekday(d))
Exit Sub
Error_:
MsgBox Err.Description, vbCritical, "Error"