構文
DateDiff(interval,date1,date2[,firstdayofweek][,firstweekofyear])
引数intervalには、date1とdate2の間隔を計算するための単位を指定します。
引数date1とdate2には、間隔を計算する2つの日付を指定します。
引数firstdayofweekは省略可能です。週の始まりの曜日を指定します。
引数firstweekofyearは省略可能です。年度の第1週を指定します。
解説
DateDiff関数は2つの日付の間隔を返します。
引数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 週として扱います |
サンプル
次の例は、97年4月1日と97年6月27日の間を「月単位」「日単位」「週単位」で表します。
Sub Sample() Dim Date1 As Date, Date2 As Date Date1 = #4/1/97# '97年4月1日 Date2 = #6/27/97# '97年6月27日 MsgBox DateDiff("m", Date1, Date2) '2ヶ月を返します MsgBox DateDiff("d", Date1, Date2) '87日を返します MsgBox DateDiff("ww", Date1, Date2) '12週を返します End Sub