指定した時間、分、秒に対応する時刻をバリアント型 (内部処理形式 Date の Variant) で返します。
構文
TimeSerial ( hour, minute, second )
警告: レジストリ エディターまたは別の方法でレジストリを誤って変更すると、重大な問題が発生することがあります。 引数が正しい値の範囲内にあることを確認します。 引数が無効な場合、結果が正しくない可能性があります。
TimeSerial 関数の引数は次のとおりです。
引数 |
説明 |
hour |
必須。 Variant (Integer)。 時を表す 0 (12:00 AM) ~ 23 (11:00 PM) の範囲の数値または数値式を指定します。 |
minute |
必須。 Variant (Integer)。 任意の数値式を指定します。 |
second |
必須。 Variant (Integer)。 任意の数値式を指定します。 |
解説
時刻 (11:59:59 など) を指定するには、各 TimeSerial 引数の数値範囲を単位の通常の範囲にする必要があります。つまり、時間の場合は 0 から 23、分と秒の場合は 0 から 59 です。 ただし、特定の時刻の前後の時間数、分数、または秒数を表す数値式を使用して、各 引数 の相対時間を指定することもできます。 次の例では、絶対時間番号の代わりに式を使用します。 TimeSerial 関数は、正午 (12 - 6) の 6 時間前、または午前 5:45:00 の 15 分前 (-15) の時刻を返します。
TimeSerial(12 - 6, -15, 0)
いずれかの引数がその引数の通常の範囲を超えた場合、上位の単位に適切に加算されます。 たとえば、75 分を指定すると、1 時間 15 分として評価されます。 引数のいずれか 1 つでも範囲 -32,768 ~ 32,767 を超えると、エラーが発生します。 3 つの引数で指定された時刻が許容される日付範囲外の日付になると、エラーが発生します。
クエリの例
式 |
結果 |
SELECT TimeSerial(18,12,10) AS NewTime FROM ProductSales GROUP BY TimeSerial(18,12,10); |
関数の引数に入力された指定した時間、分、秒で構成される "Time" を返し、列 NewTime に表示します。 結果: "午後 6:12:10" |
VBA の例
注: 次の例は、Visual Basic for Applications (VBA) モジュールでのこの関数の使用方法を示しています。 VBA の使用方法の詳細については、[検索] の横にあるドロップダウン リストで [開発者用リファレンス] を選び、検索ボックスに検索する用語を入力します。
この例では、TimeSerial 関数を使って、指定した時、分、秒の時刻を取得します。
Dim MyTime
MyTime = TimeSerial(16, 35, 17) ' MyTime contains serial representation of 4:35:17 PM.