日付時刻:日付・時刻の間隔を取得( DateDiff 関数 )
2015/08/26
DateDiff 関数の使い方
result = DateDiff ( interval, date1, date2, [ firstdayofweek, firstweekofyear ] )
引数・戻り値
- interval ・・・ 取得する日付間の間隔の「時刻・時間の単位」を表す文字列式を指定します(「時刻・時間単位の設定値表」を参照 )。
- date1,date2 ・・・ 比較する日付・時刻を指定します(内部処理形式 Date のバリアント型の値、もしくはリテラル文字列)。
- firstdayofweek ・・・ 週の始まりの曜日を表す定数を指定します。省略すると日曜日を指定したものとみなされます(「週の始まりの曜日を示す定数」を参照 )。
- firstweekofyear ・・・ 年度の第 1 週を表す定数を指定します。省略すると、1 月 1 日を含む週が第 1 週とみなされます(「年度の始まりを示す定数」を参照 )。
- result ・・・ 2つの日付・時間( date1 と date2 )の間隔を表す数値(Long 型)。
時刻・時間単位の設定値表(interval に指定する値)
| 値 | 内容 | 備考 |
| yyyy | 年 | |
| q | 四半期 | |
| m | 月 | |
| y | 年間通算日 | d を指定した場合と同じ |
| d | 日 | |
| w | 週日 | 週間数( date1 の曜日から date2 までのその曜日の数。ただし date1 自体は数に含めない)。 |
| ww | 週 | 週間数( date1 から date2 までの日曜日の数。ただし date1 が日曜日の場合、date1 は数に含めない)。 |
| h | 時 | |
| n | 分 | |
| s | 秒 |
週の始まりの曜日を示す定数(firstdayofweek に指定する値)
| 値 | 定数 | 内容 |
| 0 | vbUseSystem | NLS(システムの各国対応)APIの設定値を使用 |
| 1 | vbSunday | 日曜日(規定値) |
| 2 | vbMonday | 月曜日 |
| 3 | vbTuesday | 火曜日 |
| 4 | vbWednesday | 水曜日 |
| 5 | vbThursday | 木曜日 |
| 6 | vbFriday | 金曜日 |
| 7 | vbSaturday | 土曜日 |
年度の始まりを示す定数(firstweekofyear に指定する値)
| 値 | 定数 | 内容 |
| 0 | vbUseSystem | NLS(システムの各国対応)APIの設定値を使用 |
| 1 | vbFirstJan1 | 1月1日を含む週を年度の第1週とする(規定値) |
| 2 | vbFirstFourDays | 7日のうち少なくとも4日が新年度に含まれる週を年度の第1週とする |
| 3 | vbFirstFullWeek | 全体が新年度に含まれる最初の週を年度の第1週とする |
DateDiff 関数の使用例
サンプルVBAソース
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
Sub Sample_DateDiff() Dim myDate1 As Date, myDate2 As Date Dim msg myDate1 = #4/20/2005 7:08:21 PM# myDate2 = Now msg = "myDate1 :" & myDate1 & Chr(13) & _ "myDate2 :" & myDate2 & Chr(13) & _ "yyyy(年) :" & DateDiff("yyyy", myDate1, myDate2) & Chr(13) & _ "m(月) :" & DateDiff("m", myDate1, myDate2) & Chr(13) & _ "d(日) :" & DateDiff("d", myDate1, myDate2) & Chr(13) & _ "ww(週) :" & DateDiff("ww", myDate1, myDate2) & Chr(13) & _ "y(年日) :" & DateDiff("y", myDate1, myDate2) & Chr(13) & _ "w(週日) :" & DateDiff("w", myDate1, myDate2) & Chr(13) & _ "q(四半期):" & DateDiff("q", myDate1, myDate2) & Chr(13) & _ "h(時) :" & DateDiff("h", myDate1, myDate2) & Chr(13) & _ "n(分) :" & DateDiff("n", myDate1, myDate2) & Chr(13) & _ "s(秒) :" & DateDiff("s", myDate1, myDate2) Debug.Print msg End Sub |
実行結果
関連記事
-
-
文字列:文字列を指定した形式に変換する(StrConv 関数)
StrConv 関数の使い方 【書式】 result = StrConv ( s …
-
-
日付時刻:経過時間を取得( Timer 関数 )
Timer 関数の使い方 【書式】 result = Timer () 【戻り値 …
-
-
Split 関数(文字列型の一次配列を作成)
Split 関数の使い方 【書式】 myArray = Split ( expr …
-
-
ユーザー定義関数:自動再計算関数の設定(Volatile メソッド)
ユーザー定義関数で、自動再計算を行うかどうかを設定する ワークシート上で使用する …
-
-
文字列:文字を指定数並べた文字列を返す(String 関数)
String 関数 【書式】 result = String ( number, …
-
-
カレントフォルダ(CurDir 関数、ChDir ステートメント、ChDrive ステートメント)
カレントフォルダ カレントフォルダとは、ブックを開いたり保存するときに既定で参照 …
-
-
フォントの設定(Font プロパティ)
フォントの設定(Font プロパティ) 指定されたオブジェクトのフォント情報(F …
-
-
データ型変換関数
データ型変換関数の使い方 【書式】 function ( expression …
-
-
日付時刻:時・分・秒を取得(Hour、Minute、Second 関数)
日付時刻から時・分・秒を取得する関数 【書式】 time_hour = Hour …
-
-
変数がNull 値かどうかをチェックする( IsNull 関数 )
IsNull 関数の使い方 【書式】 result = IsNull ( exp …
