教えて!ExcelVBA!

ExcelVBAの基礎知識・書き方について紹介します。

ExcelVBAのWorksheetFunctionオブジェクトで使用するTime関数の使い方

構文

構文は以下の通りです。

WorksheetFunction.Time(時, 分, 秒)

解説

WorksheetFunctionは、ExcelVBAの組み込みオブジェクトで、Excelのワークシート関数をVBAから呼び出す際に使用します。Time関数は、指定された「時」「分」「秒」を元に、時間を表す値を返します。返される時間の形式はExcelの日付・時間形式で、1日は1として扱われます。例、12:00:00は0.5、18:00:00は0.75に相当します。この関数は、時刻を数値として処理する際に役立ちます。時は、0から23の整数で時間を表します。分は、0から59の整数で分を表します。秒は、0から59の整数で秒を表します。

プログラミング例

具体的なプログラミング例を紹介します。

Sub 時刻を表示()
    Dim 時 As Integer
    Dim 分 As Integer
    Dim 秒 As Integer
    Dim 結果 As Double
    ' 時、分、秒の設定
    時 = 14
    分 = 45
    秒 = 30
    ' Time関数を使って時刻を計算
    結果 = WorksheetFunction.Time(時, 分, 秒)
    ' 時刻をメッセージボックスで表示
    MsgBox "現在の時刻は: " & Format(結果, "hh:mm:ss")
End Sub

上記のプログラムでは、時、分、秒という日本語の変数を使って時間を指定し、Time関数でその時間の数値を計算します。その結果をMsgBox使って「hh:mm:ss」で表示します。例えば、14時45分30秒が設定されると、メッセージボックスには「14時45分30秒」と表示されます。

まとめ

Time関数は、指定した「時」「分」「秒」に基づいて時間を返す便利な関数です。返される時間はExcelの標準的な日付・時間形式で、1日は1として扱われます。この関数を使えば、時間の計算や表示が簡単に分かります。