指定した年月の何週目の何曜日がいつかを得る |
対象バージョン : 97, 2000, 2002, 2003, 2007
最終更新日 : 2007/02/12
(オリジナル作成日 : 1998/04/18)
概 要
指定した年月の何週目の何曜日がいつかを得るユーザー定義関数です。
構 文
GetDate(Year , Month, DayOfWeek, Number)
解 説
GetDate 関数の戻り値は日付型 (Date)です。
GetDate 関数では次の引数を使用します。
引 数 | 内 容 | ||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Year | 調べる年を数字式で指定します。 | ||||||||||||||||||||||||
Month | 調べる月を数字式で指定します。 | ||||||||||||||||||||||||
DayOfWeek | 調べる曜日を数字式で指定します。
|
||||||||||||||||||||||||
Number | 調べる週を数字式で指定します。 |
ユーザー定義関数
Public Function GetDate(argYear As Integer, argMonth As Integer, _ argWeekDay As Integer, argNumber As Integer) As Date Dim dteBaseDay As Date Dim intWeekDay As Integer dteBaseDay = DateValue(argYear & "/" & argMonth & "/01") intWeekDay = argWeekDay - WeekDay(dteBaseDay) If intWeekDay < 0 Then dteBaseDay = dteBaseDay + 7 + intWeekDay Else dteBaseDay = dteBaseDay + intWeekDay End If GetDate = dteBaseDay + 7 * (argNumber - 1) End Function
使用例
Dim 第三月曜日 As Date
第三月曜日 = GetDate(98, 4, vbMonday, 3)
MsgBox 第三月曜日
98/4/20 が表示されます。