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