\

VBA Date型の計算(2つのDate型の差(時間間隔))

VBAで2つのDate型の差を算出する方法を紹介します。

たとえば、2021年5月17日と2021年5月24の差は7日ですが、これをVBAでプログラミングするには、DateDiff関数を使います。

DateDiff関数 構文

  • DateDiff(interval, date1, date2, firstdayofweek, firstweekofyear)

DateDiff関数は以下の引数をもちます。

  • interval : date1 と date2 の時間間隔の計算に使用する時間単位を表す文字列式です。
  • date1: 計算に使用する日付
  • date2: 計算に使用する日付
  • firstdayofweek: 省略可能。 週の始まりの曜日を表す定数です。 省略すると、日曜日を指定したものと見なされます。
  • firstweekofyear: 省略可能。 年の第 1 週を指定する定数です。 省略すると、1 月 1 日を含む週が第 1 週と見なされます。

以下のように、引数3つを指定してDateAdd関数を使用します。

1
2
3
4
5
6
7
Dim DateValue1 As Date
DateValue1 = #2/29/2020 10:00:00 AM#

Dim DateValue2 As Date
DateValue2 = #2/28/2021 8:00:00 PM#

MsgBox (DateDiff("yyyy", DateValue1, DateValue2))

時間単位を表す文字列式

説明 実行例
yyyy DateDiff(“yyyy”, #2/29/2020 10:00:00 AM#, #2/28/2021 8:00:00 PM#) = 1
q 四半期 DateDiff(“q”, #2/29/2020 10:00:00 AM#, #2/28/2021 8:00:00 PM#) = 4
m DateDiff(“m”, #2/29/2020 10:00:00 AM#, #2/28/2021 8:00:00 PM#) = 12
y 通年での日数 DateDiff(“y”, #2/29/2020 10:00:00 AM#, #2/28/2021 8:00:00 PM#) = 365
d DateDiff(“d”, #2/29/2020 10:00:00 AM#, #2/28/2021 8:00:00 PM#) = 365
w 平日 DateDiff(“w”, #2/29/2020 10:00:00 AM#, #2/28/2021 8:00:00 PM#) = 52
ww DateDiff(“ww”, #2/29/2020 10:00:00 AM#, #2/28/2021 8:00:00 PM#) = 53
h DateDiff(“h”, #2/29/2020 10:00:00 AM#, #2/28/2021 8:00:00 PM#) = 8770
n DateDiff(“n”, #2/29/2020 10:00:00 AM#, #2/28/2021 8:00:00 PM#) = 526200
s DateDiff(“s”, #2/29/2020 10:00:00 AM#, #2/28/2021 8:00:00 PM#) = 31572000

コメントシステムを導入しました!コメント頂けると嬉しすぎて、光の速さで返信します(●´ω`●)

速攻でメモできる QuickNote リリースしました!

QuickNoteは動作が超軽量でサクサクかけるノートアプリです。一瞬の閃きを逃さずにノートを開き書き始めることができます。 アカウント登録も不要です。お試しあれ!

Excel操作をコマンドで! proBoarderExcel

Excelはマウスで操作するのが基本ですが、マウス操作に疲れてはいませんか? キーボードでExcel操作ができるようになるアプリです。オープンソースで無料です。

積み上げ! Daily Stack リリースしました!

Daily Stack は日々の積み上げを管理するToDoアプリです。過去の積み上げの振り返りだけでなく、ツイート機能もあります。 アカウント登録不要ですぐに使い始めることができます。

ExecNote.app リリースしました!

ExecNoteは、コードが実行できるMarkdownアプリケーションです。Markdownドキュメント内に記載したコードをクリックすると実行ができます。わざわざターミナルを 起動させる必要がありません!無料ですのでもしよければダウンロードをお願いします。

About Me

11年目のシステムエンジニアです。アプリで生活や仕事を改善したい🐱仕事効率化、自動化のアプリ開発が得意です、ご相談ください。 🚀エンタメ系アプリの開発も模索中🐬社内SEや個人アプリ開発者、システムエンジニアになりたい人と繋がりたい🐱