指定した年月の何週目の何曜日がいつかを得る Hit Counter

対象バージョン : 97, 2000, 2002, 2003, 2007
最終更新日 : 2007/02/12 (オリジナル作成日 : 1998/04/18)


概 要

 指定した年月の何週目の何曜日がいつかを得るユーザー定義関数です。

 

構 文

 GetDate(Year , Month, DayOfWeek, Number)

 

解 説

GetDate 関数の戻り値は日付型 (Date)です。

GetDate 関数では次の引数を使用します。

引 数 内     容
Year 調べる年を数字式で指定します。
Month 調べる月を数字式で指定します。
DayOfWeek 調べる曜日を数字式で指定します。

組込み定数

内容

vbSunday 1 日曜日
vbMonday 2 月曜日
vbTuesday 3 火曜日
vbWednesday 4 水曜日
vbThursday 5 木曜日
vbFriday    6 金曜日
vbSaturday 7 土曜日
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 が表示されます。


目次へ戻る