Weekday関数 解説(Excel VBA)

Excel VBAのWeekday関数について

VBAのWeekday関数は、指定した日付が週の何日目であるかを返す関数です。この関数は、週の始まりを設定でき、結果は数値形式で返されます。

Weekday関数の構文

Weekday関数の基本的な構文は次のとおりです:

Weekday(date, [firstdayofweek])

各パラメータの詳細:

  • date: 週の日を求めたい日付。
  • firstdayofweek: (オプション)週の初めの日を設定する定数。デフォルトは日曜日。

firstdayofweekパラメータで使用できる定数:

  • vbUseSystemDayOfWeek (-2): システムの設定を使用。
  • vbSunday (1): 日曜日を週の初めとする。
  • vbMonday (2): 月曜日を週の初めとする。
  • vbTuesday (3), vbWednesday (4), vbThursday (5), vbFriday (6), vbSaturday (7): それぞれ該当の日を週の初めとする。

Weekday関数の使用例

以下にWeekday関数の基本的な使用例を示します。

Sub WeekdayExample()
    Dim myDate As Date
    Dim weekdayNum As Integer
    
    ' 日付を設定
    myDate = #7/25/2023#
    
    ' 日付の週の日を取得
    weekdayNum = Weekday(myDate, vbMonday)
    
    MsgBox "指定した日付は週の " & weekdayNum & " 日目です。"
End Sub

このサンプルコードでは、Weekday関数を使用して日付の週の日を取得し、その結果をメッセージボックスで表示します。週の初めを月曜日と設定しています。

このように、VBAのWeekday関数は、特定の日付が週の何日目であるかを返すことで、日付データの管理と処理を容易にします。