【VBA】[数値] を [時刻] に変換する
画像のように、「時・分・秒」が1つのセルに1つずつ区分けされて記入されている場合、例えば、1つのセルに時刻をまとめるには以下のコードを用います。
◆TimeSerial(時の値, 分の値, 秒の値)
◆TimeValue(時刻)
どういう事か、下記の例題・画像をご覧ください。
例題①
Range("D2") = TimeSerial(Range("A2"), Range("B2"), Range("C2"))
↑の画面のように「時・分・秒」が分かれて記入されているとします。これをセル【D2】にまとめて記載しようとした場合のコードは↑のようになります。
↑のコードを実行すると「時・分・秒」1つ1つのただの『数字』が『時刻』として認識されて記載されます。
例題②
Range("D3") = TimeValue(Range("A3") & Range("B3") & Range("C3"))
1つのセルに「時・分・秒」の記載があった場合は↑のコードを使用してください。
例題③
Range("D4") = TimeValue(Range("A4"))
1つのセルに「[午前or午後]●●時▽▽分◆◆秒」とあった場合は↑のコードを活用する事により「●● : ▽▽ : ◆◆ [AM or PM]」という表示に変換する事が出来ます。
以上、何かの参考になれば幸いです。