Excel VBA Now関数で現在の日時を取得する

VBA関数

VBA関数のNow関数を使用して、現在の日時を取得する方法についてご説明します。

Now関数は日付と一緒に時間も取得したい時に使用ます。

日付と時間でマクロの実行を制御する場合などに使用すると非常に便利です。

YearやMonth、Day関数やHour、Minute、Second関数と組み合わせて使うケースも多いです。

また、似た様な関数として現在の日付を取得するには「Date関数」を使用します。

現在の時刻の取得は「Time関数」を使用します。

1.Now関数の使い方

Now関数は現在の日時を返します。

次のように記述します。

Now

引数はありません。

そのまま「Now」とするだけで使用できます。

Now関数が返す日付形式、時刻形式はコントロールパネルの設定で指定されている形式です。

基本的にフォーマットを指定しなければ日付は「yyyy/mm/dd」、時刻は「h:mm::ss」の形式を返します。

開発者のPC上で把握している分には問題ないですが、他のPCで実行する場合は変更されている可能性がゼロではないため、念のため日付や時刻の判定を組み込んだり、フォーマット形式を指定してから扱う事をおすすめします。

2.サンプルコード

シンプルにNow関数を使うコードとYear~Second関数を組み合わせたサンプルコードです。

Sub Sample1()

Debug.Print Now '現在の日時

Debug.Print Year(Now) '現在の日時の「年」

Debug.Print Month(Now) '現在の日時の「月」

Debug.Print Day(Now) '現在の日時の「日」

Debug.Print Hour(Now) '現在の日時の「時」

Debug.Print Minute(Now) '現在の日時の「分」

Debug.Print Second(Now) '現在の日時の「秒」

End Sub
タイトルとURLをコピーしました