VBScriptで、日時の差(間隔)を計算する「DateDiff」関数の使い方を解説します。
はじめに
本記事では、以下のように日時の差(間隔)を計算し、その結果を秒や月など、様々な単位で取得することが出来る「DateDiff」関数の使い方を説明します。
例えば、「2022/10/1 12:00:00」と「2023/5/1 10:00:00」を渡した場合、 ・秒は、[18309600]が返ります。 ・月は、[7]が返ります。 ・年は、[1]が返ります。
DateDiff関数について
ここでは、DateDiff関数について説明します。
書式
DateDiff("単位", "開始日時", "終了日時")
使用可能な単位
DateDiff関数で使うことの出来る単位です。
設定値 | 説明 |
---|---|
yyyy | 年 |
q | 四半期 |
m | 月 |
y | 年間通算日 |
d | 日 |
w | 週日 |
ww | 週 |
h | 時 |
n | 分 |
s | 秒 |
使用例
DateDiff関数の使用例です。
Option Explicit ' 結果を格納する変数 Dim yyyy, m, ww, d, h, n, s ' 日時の間隔を「年」で取得 yyyy = DateDiff("yyyy", "2022/10/1 12:00:00", "2023/5/1 10:00:00") ' 日時の間隔を「月」で取得 m = DateDiff("m", "2022/10/1 12:00:00", "2023/5/1 10:00:00") ' 日時の間隔を「週」で取得 ww = DateDiff("ww", "2022/10/1 12:00:00", "2023/5/1 10:00:00") ' 日時の間隔を「日」で取得 d = DateDiff("d", "2022/10/1 12:00:00", "2023/5/1 10:00:00") ' 日時の間隔を「時」で取得 h = DateDiff("h", "2022/10/1 12:00:00", "2023/5/1 10:00:00") ' 日時の間隔を「分」で取得 n = DateDiff("n", "2022/10/1 12:00:00", "2023/5/1 10:00:00") ' 日時の間隔を「秒」で取得 s = DateDiff("s", "2022/10/1 12:00:00", "2023/5/1 10:00:00") MsgBox(yyyy & "年" & _ vbCrLf & m & "ヵ月" & _ vbCrLf & ww & "週" & _ vbCrLf & d & "日" & _ vbCrLf & h & "時間" & _ vbCrLf & n & "分" & _ vbCrLf & s & "秒")
上記サンプルの実行結果です。
1年 7ヵ月 31週 212日 5086時間 305160分 18309600秒
日時に関連する記事
日時に関連する記事をまとめました。
リンク
コメント