Excel2007でマクロを使ってセルの書式を設定する方法を考えてみます。
例えば数値をカンマ付にする場合のマクロを考えてみます。
サンプル
Sub test()
Range("A1:D1").Style = ActiveWorkbook.Styles(34).Name '(a)
Range("A2:D2").Style = "Comma [0]" '(b)
Range("A3:D3").Style = "Comma" '(c)
Range("A4:D4").NumberFormatLocal = "#,##0" '(d)
End Sub
Range("A1:D1").Style = ActiveWorkbook.Styles(34).Name '(a)
Range("A2:D2").Style = "Comma [0]" '(b)
Range("A3:D3").Style = "Comma" '(c)
Range("A4:D4").NumberFormatLocal = "#,##0" '(d)
End Sub
実行結果
「86537」に対して実行した場合の結果は次の通りです。
(a) 86,537
(b) 86,537
(c) 86,537.00
(d) 86,537
説明
(a)はスタイル番号を使う方法です。
スタイル番号はワークブックの状態によって変化しますので、実際には使いにくいと思います。
(b)はスタイル名を使う方法です。
これはシンプルです。
(c)は(b)に似ていますが、小数部分が付いてしまいます。
(a)から(c)までは、スタイルを使う方法ですので、実際の見た目はワークブックの設定に依存します。
(d)は書式を直に設定する方法です。
これはスタイルがどうなろうとカンマ付の書式にしますので最も手堅いと思います。
コメント