Date、Time、Now
現在日付の取得にはDate関数、現在時刻はTime関数、現在日時はNow関数を利用します。
これらの関数は取得のみしか出来ません。関数の実行結果はDate型の値で返却されます。
構文
1 2 3 |
Function Date() As Date Function Time() As Date Function Now() As Date |
いずれの関数も引数は設定しません。
書式を変更する場合
通常は日付はスラッシュ区切りのyyyy/mm/dd、時刻はコロン区切りのhh:mm:ssで表現されます。
ただしこれはPCの設定によるものです。以下の設定ダイアログで設定されている内容が反映されます。
Windows7の場合
カテゴリ表示で「コントロールパネル」→「時計、言語、および地域」→「日付、時刻または数値の形式の変更」→「地域と言語」ダイアログ
Windows8または10の場合
カテゴリ表示で「コントロールパネル」→「日付、時刻、または数値の形式の変更」→「地域」ダイアログ
しかしPCの設定での表現ではなく、処理中は別の書式を変更したい場合があります。
そのような場合はFormat関数で変更することが可能です。
以下のサンプルコードに例を書いています。
日付、時刻の加減算
日付と時刻は加算や減算を行うことができます。
日付は数値の+と-、時刻は#hh:mm:ss#表記での+と-が可能です。
以下のサンプルコードに例を書いています。
サンプルコード
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
現在日付、現在時刻、現在日時を出力するサンプルです。 Sub DateTimeNowTest() Dim d As Date Dim t As Date Dim n As Date d = Date t = Time n = Now '// そのまま出力 Debug.Print "現在日付:" & d Debug.Print "現在時刻:" & t Debug.Print "現在日時:" & n '// 書式変更出力 Debug.Print "書式変更出力 現在日付:" & Format(d, "yyyy年mm月dd日") Debug.Print "書式変更出力 現在時刻:" & Format(t, "hh時mm分ss秒") Debug.Print "書式変更出力 現在日時:" & Format(n, "yyyy年mm月dd日 hh時mm分ss秒") '// 加減算 Debug.Print "加減算 現在日付:" & d + 10 Debug.Print "加減算 現在時刻:" & t + #2:01:01 AM# Debug.Print "加減算 現在日時:" & n + 10 + #2:01:01 AM# End Sub |
実行結果
1 2 3 4 5 6 7 8 9 |
現在日付:2017/11/29 現在時刻:3:23:09 現在日時:2017/11/29 3:23:09 書式変更出力 現在日付:2017年11月29日 書式変更出力 現在時刻:03時23分09秒 書式変更出力 現在日時:2017年11月29日 03時23分09秒 加減算 現在日付:2017/12/09 加減算 現在時刻:5:24:10 加減算 現在日時:2017/12/09 5:24:10 |