NumberFormat プロパティ
NumberFormat プロパティは、現在のセルの表示形式をを取得したり、セルに表示形式を設定したりします。また、国や地域固有の書式(日本語等)を利用して設定を行うNumberFormatLocal プロパティでも同様のことを行うことができます。
【書式】
< 取得 >
result = Object.NumberFormat
result = Object.NumberFormatLocal
< 設定 >
Object.NumberFormat = string
Object.NumberFormatLocal = string
引数・戻り値
- object ・・・ 対象となるRange オブジェクト
- string ・・・ 書式を表す文字列を指定します(バリアント型:Variant)。
- result ・・・ 書式を表す文字列(バリアント型:Variant)。指定されたセル範囲の表示形式が同じでない場合は、Null 値を返します。
表示形式を示す文字列
[セルの書式設定] ダイアログ ボックスの [表示形式] タブで、[分類] ボックスの一覧の [ユーザー定義] を選択したときに表示される [種類] ボックスの中の文字列と同じです。
【以下の表は、表示形式を示す文字列の一例です】
表示書式 | 記号 | 内容 | 書式文字列 | 値(例) | 表示結果(例) |
標準 | 標準の書式 | “General” | 123 | 123 | |
文字列 | @ | 入力された値そのまま表示 | “<@>” | 書式 | <書式> |
数値 | 0 | 数値1桁「0」表示 | “0000.0” | 125.25 | 0125.3 |
“0.000” | 125.25 | 125.250 | |||
# | 数値1桁「0」非表示 | “####.#” | 125.25 | 125.3 | |
“#.###” | 125.25 | 125.25 | |||
? | 小数点位置 | “??.??” | 1.222 | 1.22 | |
“??.??” | 12.7 | 12.7 | |||
, | 1000単位の区切り記号挿入 | “#,#” | 1259900 | 1,259,900 | |
“#,#,千円” | 1259900 | 1260千円 | |||
“\\0,0” | 1259900 | \1,259,900 | |||
日付 | y | 西暦 | “yyyy” | 2015/5/20 | 2015 |
“yy” | 2015/5/20 | 15 | |||
m | 月 | “mm” | 2015/5/20 | 05 | |
“m” | 2015/5/20 | 5 | |||
d | 日 | “dd” | 2015/5/5 | 05 | |
“d” | 2015/5/5 | 5 | |||
g | 和暦 | “ggg” | 2015/5/1 | 平成 | |
“gg” | 2015/5/1 | 平 | |||
“g” | 2015/5/1 | H |
NumberFormatLocal と NumberFormat の違い
内容 | NumberFormat | NumberFormatLocal |
表示形式を「標準」に設定 | “General” | “G/標準” |
色を指定する | “Red” | “赤” |
「\」マークを表示 | “\\” | “\” |
NumberFormat プロパティの使用例
サンプルVBAソース
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
Sub Sample_NumberFormat() Range("B2").NumberFormat = "General" Range("B3").NumberFormat = "@" Range("B4").NumberFormat = "0000.0" Range("B5").NumberFormat = "0.000" Range("B6").NumberFormat = "####.#" Range("B7").NumberFormat = "#.###" Range("B8").NumberFormat = "??.??" Range("B9").NumberFormat = "??.??" Range("B10").NumberFormat = "#,#" Range("B11").NumberFormat = "#,#,千円" Range("B12").NumberFormat = "\\0,0" Range("D2").NumberFormat = "yyyy" Range("D3").NumberFormat = "yy" Range("D4").NumberFormat = "mm" Range("D5").NumberFormat = "m" Range("D6").NumberFormat = "dd" Range("D7").NumberFormat = "d" Range("D8").NumberFormat = "ggg" Range("D9").NumberFormat = "gg" Range("D10").NumberFormat = "g" End Sub |
実行結果
実行前
実行後