今回は、ある日時Aとある日時Bのちょうど中間値にあたる日時CをAccessVBAで求める方法をご紹介します。
例えば「2017/11/04 6:30:10」と「2017/11/04 6:40:50」の中間値を求めてみると「2017/11/04 6:35:20」になります。これをVBAで簡単に求めてみます。
DateAddとDateDiffを使用
中間日時を求めるためには、DateAdd関数とDateDiff関数を使います。
Dim dateMiddleDateTime As Date ' 求める中間日時 Dim dateStartDateTime As Date ' 日時A Dim dateEndDateTime Ad Date ' 日時B dateMiddleDateTime = DateAdd("s", (DateDiff("s", dateStartDateTime, dateEndDateTime) / 2), dateStartDateTime)
例えば、dateStartDateTime(日時A)に「2017/11/04 6:30:10」、dateEndDateTime(日時B)に「2017/11/04 6:40:50」を代入すると、dateMiddleDateTime(求める中間日時)に「2017/11/04 6:35:20」が代入されます。
まとめ
VBAに用意されている標準関数で、2つの日時の中間値を求める関数はありませんが、DateAdd関数とDateDiff関数を使えば、簡単に中間日時を求めることができます。
ぜひ使ってみてくださいね。
その他のAccess関連記事