日付時刻:日付・時刻の間隔を取得( 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 |
実行結果
関連記事
-
-
ユーザー定義関数:自動再計算関数の設定(Volatile メソッド)
ユーザー定義関数で、自動再計算を行うかどうかを設定する ワークシート上で使用する …
-
-
色を設定する(QBColor 関数)
QBColor 関数 QBColor 関数は、指定した色番号に対応するRGB コ …
-
-
文字列:文字列変数の値を右詰めまたは左詰めにする(RSet ステートメント・LSet ステートメント)
RSet ステートメント・LSet ステートメント 【書式】 < RSet ステ …
-
-
文字列:文字を指定数並べた文字列を返す(String 関数)
String 関数 【書式】 result = String ( number, …
-
-
エラー(CVErr 関数・IsError 関数・Error 関数)
CVErr 関数(エラー番号をエラー値に変換する)の使い方 【書式】 retur …
-
-
引数が省略されたかどうかをチェックする( IsMissing 関数 )
IsMissing 関数の使い方 【書式】 result = IsMissing …
-
-
乱数を生成する(Rnd 関数)
Rnd 関数の使い方 Rnd 関数は、0 以上、1 未満の範囲の乱数を単精度浮動 …
-
-
日付時刻:現在の日付・時刻を取得・設定(Now、Date、Time)
現在の日付・時刻を取得・設定 現在の日付・時刻を取得(Now 関数、Date 関 …
-
-
Option Compare ステートメント
Option Compare ステートメントの使い方 【書式】 Option C …
-
-
セルのデータを固定長形式で複数のセルに分割する(TextToColumns メソッド・Parse メソッド)
固定長形式でセルを分割 TextToColumns メソッドや Parse メソ …
