動作検証バージョン:Windows 11 Home + 64bit Excel(バージョン2307 ビルド16626.20000 クイック実行)
「vba セルの書式 パーセント 小数点」
「vba セルの書式設定 パーセンテージ」
といった検索で時折アクセスがあります。
[セルの書式設定]ダイアログボックス-[表示形式]タブ等で行うような、パーセンテージ書式設定を、
Excel VBAで行うには、どのようなコードを書けばいいのかを調べていらしたのでしょう。
[スポンサードリンク]
NumberFormatLocalでパーセント表示の書式を設定するサンプルマクロ
以下のExcelマクロを拙著『いちばんやさしいExcel VBAの教本』等で多用しているショートカットキー[F8]で、ステップ実行してください。
Sub NumberFormatLocalでパーセント書式を設定する()
Range("A1:A3").Value = 0.12345
Range("A1").NumberFormatLocal = "0%"
Range("A2").NumberFormatLocal = "0.0%"
Range("A3").NumberFormatLocal = "0.00%"
End Sub
Range("A1:A3").Value = 0.12345
Range("A1").NumberFormatLocal = "0%"
Range("A2").NumberFormatLocal = "0.0%"
Range("A3").NumberFormatLocal = "0.00%"
End Sub
A1:A3セルに数値「0.12345」が入力されたあとに、
表示形式が設定され、
12%
12.3%
12.35%
と表示される様子を確認できます。
Rangeオブジェクトに用意されているNumberFormatLocalプロパティから、
「0」「.」「%」を使って、
Range("A1").NumberFormatLocal = "0%"
Range("A2").NumberFormatLocal = "0.0%"
Range("A3").NumberFormatLocal = "0.00%"
指定すればOKということです。
NumberFormatでパーセント表示の書式を設定するサンプルマクロ
Range.NumberFormatLocalプロパティを使えば良さそうですが、Range.NumberFormatプロパティの場合も確認しておきましょう。
Sub NumberFormatでパーセント書式を設定する()
Range("A4:A6").Value = 0.12345
Range("A4").NumberFormat = "0%"
Range("A5").NumberFormat = "0.0%"
Range("A6").NumberFormat = "0.00%"
End Sub
Range("A4:A6").Value = 0.12345
Range("A4").NumberFormat = "0%"
Range("A5").NumberFormat = "0.0%"
Range("A6").NumberFormat = "0.00%"
End Sub
結果は、
Range.NumberFormatLocalプロパティを使ったときと同じです。
最終更新日時:2023-07-19 15:02
[スポンサードリンク]
Home » Excel VBA Rangeオブジェクト » 表示形式 » Excel VBAでパーセント表示書式を設定する