この記事では、VBAでセルの書式設定のうち表示形式を数値に変更する方法を紹介します。
数値に変更するプログラムは2通りございます。
- 「0」で指定
- 「#」で指定
「0」で指定する場合
整数の場合
Cells(2, 2).NumberFormatLocal = "0"
セルの指定部分の「Cells(2, 2)」の部分は「Range("B2")」としても同じ結果となります。
小数の場合
Cells(2, 2).NumberFormatLocal = "0.0"
小数の場合、小数点より後ろの0の数は、実際のセルの値と合わせる必要があります。
0の数がセルの値より少ない場合は、0の数分の値が表示され、0の数がセルの値より多い場合は、超過している分の0が表示されます。
セルの値を123.456とした場合
- ”0.0”とした場合 → 123.5
- "0.00"とした場合 → 123.46
- "0.000"とした場合 → 123.456
- "0.0000"とした場合 → 123.4560
セルの値を123とした場合
- "0.0"とした場合 → 123.
桁区切りスタイルの場合
Cells(2, 2).NumberFormatLocal = "0,0"
桁区切りスタイルにしたい場合は、「"0,0"」とすれば良いです。7桁以上となりカンマ数が2つになったとしても、「"0,0"」で桁区切りスタイルとなります。
"0,0"と指定した場合
- 1234 → 1,234
- 1234567 → 1,234,567
「#」で指定する場合
整数の場合
Cells(2, 2).NumberFormatLocal = "#"
"#"とするだけで数値に変更することができます。
小数の場合
Cells(2, 2).NumberFormatLocal = "#.#"
「0」とは違い、小数点より後ろの数を「"#"」が超過したとしても、「"#"」が表示されることはありません。
セルの値が123.456とした場合
- ”#.#”とした場合 → 123.5
- "#.##"とした場合 → 123.46
- "#.###"とした場合 → 123.456
- "#.####"とした場合 → 123.456
セルの値を123とした場合
- "#.#"とした場合 → 123.
桁区切りスタイルの場合
Cells(2, 2).NumberFormatLocal = "#,#"
桁区切りスタイルの場合は、「0」の時と同じ結果になります。
"#,#"と指定した場合
- 1234 → 1,234
- 1234567 → 1,234,567
以上、VBAでセルの表示形式を数値に変更する方法の紹介でした。
関連記事
VBAによるセルの表示形式の他の種類への変更方法は以下の記事でまとめているので、ぜひ参考にしてください!
VBAでセルの表示形式を変更する方法をまとめ
この記事では、VBAによるセルの表示形式の変更方法を全てまとめています。
以下、VBAを学ぶのにおすすめの書籍となっています。ぜひ参考にしてください。