0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【Excel VBA】Time関数|現在の時刻を取得する方法と注意点

Last updated at Posted at 2025-07-09

Time関数の使い方と注意点

Time関数は、現在のシステム時刻(時:分:秒)を取得する関数です。
日付情報は含まれず、時刻のみが返されます。

構文

Time
  • 戻り値 : 現在のシステム時刻(Date型)
    Date型は日付・時刻両方を表す型ですが、Time関数では時刻部分のみが意味を持ちます

使用例

現在の時刻を表示

Sub Sample()
    Debug.Print Time
End Sub

▶ 出力結果(実行時刻が午後3時45分12秒の場合)

15:45:12

1時間後の時間を取得

Sub Sample()
    Debug.Print Time + TimeSerial(1, 0, 0)
End Sub

▶ 出力結果(実行時刻が午後3時45分12秒の場合)

16:45:12

TimeSerial関数とは?
TimeSerial(h, m, s) は指定された時・分・秒の「時刻値」を返す関数です。

⚠️注意

日付は含まれない

Time関数は時刻のみを返します。
日付を含めたい場合はNow関数を使用します。

Sub Sample()
    Debug.Print Now
End Sub

▶ 出力結果(実行時刻が2025年1月1日午後3時45分12秒の場合)

2025/01/01 15:45:12

型はDate型(内部的にはシリアル値)

Time関数の戻り値はDate型ですが、実体は「0以上1未満の小数値」です。

たとえば:

  • 0.0 → 00:00:00(深夜0時)
  • 0.5 → 12:00:00(正午)
  • 0.75 → 18:00:00(午後6時)

この数値は 日付と時刻を数値で扱うExcelの内部仕様に基づいており、
CDbl関数を使えば、その内部数値を確認できます。

CDbl関数とは?
CDbl 関数は「Convert to Double(倍精度小数に変換)」の略で、
Date型や文字列などを、Double型(倍精度の浮動小数)に変換する関数です。

Sub Sample()
    Debug.Print Time
    Debug.Print CDbl(Time)
End Sub

▶ 出力結果(実行時刻が12時の場合)

12:00:00
0.5

この仕組みを知っておくと、時刻の差分計算や加減算も簡単になります。
例えば Time + 0.25 は「現在時刻 + 6時間」になります(0.25日 = 6時間)。

セルに書き込むと自動的に時刻表示になる

Sub Sample()
    Range("A1").Value = Time
End Sub

▶ 出力結果(実行時刻が12時の場合)
実行すると、セルA1には現在の時刻が書き込まれます。
output_time.png

表示形式が画像とは違う場合もあります
表示形式はエクセルの書式設定やPCの書式設定により異なる場合があります。

システム時刻依存

Time関数の値は、PCの現在の時刻を参照しています。
そのため、システムの時計設定が間違っていると、取得される時刻も不正確になります。

関連するVBA関数

その他のVBA関数

【Excel VBA】VBAでよく使う関数一覧&基本の使い方

参考リンク

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?