Excel VBA Hour、Minute、Second関数の使い方

VBA関数

VBA関数のHour関数、Minute関数、Second関数の使い方についてご説明します。

英語の意味そのままですが、Hour関数は時を、Minute関数は分を、Second関数は秒を取得する関数になります。

「10:01:20」のような時間からそれぞれ、時、分、秒を取得したい際に使用します。

時刻として有効な文字列、Date型、Variant型でも取得可能です。

TimeSerial関数」と併用して利用するなどの頻度が高いです。

また日付に関しては「Year、Month、Day関数の使い方」をご覧ください。

その他、日付に関しては「Date関数」、時間に関しては「Time関数」、日時は「Now関数」などがあります。

1.Hour、Minute、Second関数の使い方

Hour、Minute、Second関数はそれぞれ時、分、秒を返します。

次のように記述します。

Hour(時刻)

Minute(時刻)

Second(時刻)

「時刻」にはそれぞれ時、分、日を取得したいVariant型、文字列型、Date型の時刻を指定します。

2.サンプルコード

日付型でも文字列型でも同じ結果を取得出来ます。

Sub Smaple1()

Dim MyTime As Date

MyTime = "10:20:30"

Debug.Print MyTime

Debug.Print Hour(MyTime)

Debug.Print Minute(MyTime)

Debug.Print Second(MyTime)

'文字列型
Dim MyStr As String

MyStr = "10:20:30"

Debug.Print MyStr

Debug.Print Hour(MyStr)

Debug.Print Minute(MyStr)

Debug.Print Second(MyStr)

End Sub

TimeSerial関数と組み合わせると次のようになります。

分に+10しているので、10分後を取得出来ます。

Sub Smaple2()

Dim MyTime As Date

MyTime = "10:20:30"

'分に+10します
Debug.Print TimeSerial(Hour(MyTime), Minute(MyTime) + 10, Second(MyTime))

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