構文
DatePart(interval,date[,firstdayofweek[,firstweekofyear]])
引数intervalには、時間間隔の単位を指定します。
引数dateには、評価の対象になる日付を指定します。
引数firstdayofweekは省略可能です。週の始まりの曜日を指定します。
引数firstweekofyearは省略可能です。年度の第1週を指定します。
解説
DatePart関数は、引数dateで指定した日付を引数intervalで指定した間隔で評価します。
引数Intervalに指定できる間隔は次のとおりです。
| 設定値 | 内容 |
|---|---|
| yyyy | 年 |
| q | 四半期 |
| m | 月 |
| y | 年間通算日 |
| d | 日 |
| w | 週日 |
| ww | 週 |
| h | 時 |
| n | 分 |
| s | 秒 |
引数firstdayofweekに指定できる設定値は次のとおりです。
| 定数 | 値 | 内容 |
|---|---|---|
| vbUseSystem | 0 | 各国語対応APIの設定値を使います |
| vbSunday | 1 | 日曜(既定値) |
| vbMonday | 2 | 月曜 |
| vbTuesday | 3 | 火曜 |
| vbWednesday | 4 | 水曜 |
| vbThursday | 5 | 木曜 |
| vbFriday | 6 | 金曜 |
| vbSaturday | 7 | 土曜 |
引数firstweekofyearに設定できる設定値は次のとおりです。
| 定数 | 値 | 内容 |
|---|---|---|
| vbUseSystem | 0 | 各国語対応APIの設定値を使います |
| vbFirstJan1 | 1 | 1 月 1 日を含む週を年度の第 1 週として扱います(既定値) |
| vbFirstFourDays | 2 | 7 日のうち少なくとも 4 日が新年度に含まれる週を年度の第 1 週として扱います |
| vbFirstFullWeek | 3 | 全体が新年度に含まれる最初の週を年度の第 1 週として扱います |
サンプル
次の例は、ユーザーが入力した任意の日付が「第何週」で「第何四半期」に該当するかを表示します。
Sub Sample()
Dim myDate As String, msg As String, CL As String
CL = Chr(13) & Chr(10)
myDate = InputBox("日付を入力してください")
If IsDate(myDate) Then
msg = myDate & "は、" & CL
msg = msg & DatePart("ww", myDate) & "週め" & CL
msg = msg & "第" & DatePart("q", myDate) & "四半期に属します"
MsgBox msg
End If
End Sub