一覧表などを作るとき、「数値の列は3桁区切りの右詰め」のように、書式を設定すると表が見やすくなります。
エクセルでは「2-16」などの数値は、自動的に日付に変換されます。あらかじめ書式を設定することで、所定の書式にすることができます。
日付、数値などの書式を設定する
種別 | 説明 |
---|---|
標 準 | “G/標準” |
文字列 | “@” |
数 値 | “#” |
日付(2020/1/5) | “yyyy/m/d” |
日付(2020年1月5日) | “yyyy””年””m””月””d””日””;@” |
日付(令和2年1月5日) | “[$-ja-JP-x-gannen]ggge””年””m””月””d””日””;@” |
Columnsプロパティ で列を指定します。
Sub サンプル3462_1()
Columns("B").NumberFormatLocal = "G/標準"
Range("B2") = "標準"
Range("B3") = "2-16"
Columns("C").NumberFormatLocal = "@"
Range("C2") = "文字列"
Range("C4") = "2-16"
Columns("D").NumberFormatLocal = "#"
Range("D2") = "数値"
Range("D5").Value = "2-16"
Columns("E").NumberFormatLocal = "yyyy/m/d"
Range("E2") = "日付"
Range("E6").Value = "2-16"
Columns("F").NumberFormatLocal = "yyyy""年""m""月""d""日"";@"
Range("F2") = "日付"
Range("F7").Value = "2-16"
Columns("G").NumberFormatLocal = "[$-ja-JP]ggge""年""m""月""d""日"";@"
Range("G2") = "日付"
Range("G8").Value = "2-16"
End Sub
コード解説
Columns(“B”).NumberFormatLocal = “G/標準”
’Columns(“B”)でB列を指定します。
NumberFormatLocal = “G/標準”
「標準」の書式を設定します。
Range(“B3”) = “2-16”
’セルB3に「2-16」が日付で表示されます。
Columns(“C”).NumberFormatLocal = “@”
’”@”で文字列を設定します。
Range(“C4”).Value = “2-16”
’「2-16」が文字列で表示されます。
Columns(“D”).NumberFormatLocal = “#”
’”#”で数値を設定します。
Range(“D5”).Value = “2-16”
’「2-16」が数値で表示されます。
Columns(“E”).NumberFormatLocal = “yyyy/m/d”
’”yyyy/m/d”で日付を設定します。
Range(“E6”).Value = “2-16”
’「2-16」が日付で表示されます。
Columns(“F”).NumberFormatLocal = “yyyy””年””m””月””d””日””;@”
’ “yyyy””年””m””月””d””日””;@”で日付を設定します。
Range(“F7”).Value = “2-16”
’「2-16」が日付で表示されます。
Columns(“G”).NumberFormatLocal = “[$-ja-JP]ggge””年””m””月””d””日””;@”
’ “[$-ja-JP]ggge””年””m””月””d””日””;@”で和暦を設定します。
Range(“G8”).Value = “2-16”
’「2-16」が和暦の日付で表示されます。
マクロの実行結果
各セルに設定した書式が表示されます。