時刻の書式

広告

時刻の書式は時や分をどのように表示するかで書式用の文字を組み合わせて利用します。

時分秒については次の通りです。

書式パーツ対象表示
h時間21:8:5321
hh時間21:8:5321
m21:8:538
mm21:8:5308
s21:8:5353
ss21:8:5353

「m」や「mm」は月の書式文字と同じですが、「h」や「s」などと一緒に使うことで分を表す書式文字として使えます。

実際に試してみます。

testcellformat9.bas

Sub テスト()
    
    Range("A1:A2").Value = "08:12:06"
    Range("A1").NumberFormatLocal = "h:m:s"
    Range("A2").NumberFormatLocal = "hh:mm:ss"
    
    Range("A3:A4").Value = "21:05:36"
    Range("A3").NumberFormatLocal = "h:m:s"
    Range("A4").NumberFormatLocal = "hh:mm:ss"
        
End Sub

上記マクロを実行すると次のようになります。

時刻の書式

AM/PM

時刻は24時間表記となってますが、「AM/PM」を追加で記述すると12時間表記とすることもできます。例えば次のように記述します。

Range("A2").NumberFormatLocal = "hh:mm:ss AM/PM"

このようにAM/PMを追加することで、時間は12時間表記に変わり、午前または午後に応じてAMまたはPMが表示されます。

実際に試してみます。

testcellformat10.bas

Sub テスト()
    
    Range("A1:A2").Value = "08:12:06"
    Range("A1").NumberFormatLocal = "hh:mm:ss AM/PM"
    Range("A2").NumberFormatLocal = "hh:mm:ss"
    
    Range("A3:A4").Value = "21:05:36"
    Range("A3").NumberFormatLocal = "hh:mm:ss AM/PM"
    Range("A4").NumberFormatLocal = "hh:mm:ss"
        
End Sub

上記マクロを実行すると次のようになります。

時刻の書式

時刻の場合でも、好きな文字を書式の間に記述することが出来ます。

Excel VBA入門の他の記事を見てみる

( Written by Tatsuo Ikura )