対象:Excel2003, Excel2007, Excel2010
「エクセルvba 9時間プラスする」
という検索が行われていました。
VBA(Visual Basic for Applications)で、9時間後の時刻を求める方法を探している方による検索でしょうか。
ワークシート関数を使ってn時間後を求めるには、HOUR・MINUTE・SECOND関数を使って基準の時間をバラバラにして、HOURに加算をしてTIME関数で時間に戻すというのが定番の方法です。
[スポンサードリンク]
VBAの場合は、DateAdd関数を使うと、簡単にn時間後の時間を計算できます。
▼n時間後の時刻を計算するコード
※現在の9時間後の時間をメッセージボックスに表示する例 MsgBox DateAdd("h", 9, Now)
※現在の9時間後の時間をメッセージボックスに表示する例 MsgBox DateAdd("h", 9, Now)
DateAddという名前から、日付の計算しかできないと考えてしまう方もいらっしゃるかもしれませんが、時間の計算もできます。
第3引数に基準となる日付や時刻、第2引数に加算する日数や時間、第1引数には第2引数に指定されている数値が何なのかを意味する文字列を指定します。
DateAdd("d", 9, Now)なら9日後
DateAdd("m", 9, Now)なら9か月後
DateAdd("n", 9, Now)なら9分後
の日時が返されます。
[スポンサードリンク]
Home » エクセルマクロ・Excel VBAの使い方 » VBA関数 » n時間後の時刻を計算する-DateAdd関数