VBAで、特定の日付の曜日を取得する方法についての備忘録
日付関数 Weekday と、WeekdayName の2つがあり、それらについて紹介。
Weekday
Weekday 関数は、特定の日付の曜日を示す整数値を返す関数です。
曜日をしらべたい日付には、”2021/2/2”のような文字列も可能です。
週の第1日目の曜日を示す値またはクラス名
・0:vbUseSystemDayOfWeek(PCのOSのシステム時間)
・1:vbSunday (日曜日)
・2:vbMonday (月曜日)
・3:vbTuesday (火曜日)
・4:vbWednesday (水曜日)
・5:vbThursday (木曜日)
・6:vbFriday (金曜日)
・7:vbSaturday (土曜日)
例)
MsgBox Weekday("2021/2/2")
カレンダー通り、2(=火曜日)が表示されます。
WeekdayName
Weekday 関数では、曜日を表す数字が返ってくるだけなので、何曜日なのか分かりません。
そこで、WeekdayName 関数で、何曜日というテキストを返します。
WeekdayName(Weekday関数で求めた曜日を表す数字, 「曜日」を省略するかどうか, )
例) 「曜日」を省略しない場合
MsgBox WeekdayName(Weekday("2021/2/2"),false)
「火曜日」が表示されます。
例) 「曜日」を省略する場合
MsgBox WeekdayName(Weekday("2021/2/2"),true)
「曜日」が省略され、「火」が表示されます。