Hour関数、Minute関数、Second関数のポイント

このページでは、時刻を操作する関数のポイントを解説する。

スポンサーリンク

Hour関数のポイント

Hour関数は、時刻から「時」を取り出して返す。次のプロシージャを実行すると、メッセージボックスに「14」と表示される。

'14と表示される
Sub Test()
    MsgBox Hour("14:12:03")
End Sub

Now関数と組み合わせて使うことも多い。

'15と表示される(現在時刻が 15:03:12 の場合)
Sub Test()
    MsgBox Hour(Now)
End Sub

時を表す数値が1桁の場合は、その1桁のみを返す(先頭にゼロはつかないということ)。

'05ではなく5と表示される
Sub Test()
    MsgBox Hour("05:12:03")
End Sub

「05」のように先頭にゼロを付けたい場合は、Format関数を合わせて使用するといい。

'05と表示される
Sub Test()
    MsgBox Format(Hour("05:12:03"), "00")
End Sub

Format関数については下記のページにまとめた。

Format関数のポイント
Format関数は、日付や数値をさまざまな形式に変換する。VBAエキスパート試験でも問われやすい関数だと思う。 基本的な使い方 Format関数には...

Minute関数のポイント

Minute関数は、時刻から「分」を取り出して返す。次のプロシージャを実行すると、メッセージボックスに「12」と表示される。

'12と表示される
Sub Test()
    MsgBox Minute("14:12:03")
End Sub

Hour関数と同じく、分を表す数値が1桁の場合は、その1桁のみを返す。

Second関数のポイント

Second関数は、時刻から「秒」を取り出して返す。次のプロシージャを実行すると、メッセージボックスに「34」と表示される。

'34と表示される
Sub Test()
    MsgBox Second("04:05:34")
End Sub

Hour関数と同じく、秒を表す数値が1桁の場合は、その1桁のみを返す。

練習問題

マクロ「Lesson」を実行したところ、アクティブシートのセルの値が下図のようになった。空欄【1】【2】にあてはまる語句として正しいものはどれか。次の中から1つ選択しなさい。

Sub Lesson()
    Range("A2") = 【 1 】(Range("A1"))
    Range("A3") = 【 2 】(Range("A1"))
End Sub
  1. 【1】Min
    【2】Sec
  2. 【1】Min
    【2】Second
  3. 【1】Minute
    【2】Sec
  4. 【1】Minute
    【2】Second

正解を見る

4

コメント