セルの表示形式の書式記号
NumberFormatプロパティやNumberFormatLocalプロパティでセルの表示形式を設定する際に使う書式記号には多くの種類があります。
それらの書式記号を整理します。
セミコロンの意味
書式にはセミコロン(;)を使ったものがあります。
「#,##0;-#,##0;”-“;@」
セミコロンは数値の書式の場合にのみ使用します。
左から、「正数;負数;ゼロ値;文字列」になります。正数、負数、ゼロ値、文字列のいずれも省略可能です。
例えば、2番目の負数と3番目のゼロ値を省略して、1番目の正数と4番目の文字列を設定する場合は、「正数;;;文字列」の書式形式として「#,##0;;;@」のように書きます。
この場合は、書式が設定されていない負数とゼロ値を入力しても入力値は残ったままですがセルには何も表示されません。
数値の書式記号
数値の書式では [ # 0 , . % ? ] の6つの文字を利用します。
注意すべきなのは # と 0 の違いです。#は桁数が少ない場合は表示しませんが、0は表示します。
#と0は書式設定した整数部の桁数より超えた入力がされた場合は超えた分も表示しますが、小数部は書式の桁数へ四捨五入します。
| 書式記号 | 内容 | 書式の設定 | セル入力値 | 表示値 | 
|---|---|---|---|---|
| # | 最上位の0は表示しない数字一文字を表す。 | “##.###” | 123.4567 | 123.457 | 
| 01 | 1. | |||
| “###” | 001 | 1 | ||
| 000 | 表示しない | |||
| 0 | 数字一文字を表す。 | “00.000” | 123.4567 | 123.457 | 
| 01 | 01.000 | |||
| “000” | 001 | 001 | ||
| 000 | 000 | |||
| , | 金額の3桁区切り、または、1000未満省略を表す。 | “#,##0” | 1234567 | 1,234,567 | 
| “#,##0,” | 1234567 | 1,235 | ||
| . | 小数点表示を表す。 | “0.00” | 123.4567 | 123.46 | 
| % | パーセント表示を表す。 | “0.00%” | 123.4567 | 123.46% | 
| ? | 小数点の位置を揃えて表示する。 | “??0.0??” | 123.4567 | 123.457 | 
| 1.234567 | 1.235 | |||
| _ | 桁揃え用の間隔を表す。 | “0.00_ “ | 123.4567 | 123.46 | 
| E+ E- e+ e- | 指数形式を表す。 | “0.0E+00” | 123456789012345 | 1.2E+14 | 
| “0.0E+00” | 0.0000000123456 | 1.2E-08 | ||
| “0.0e+00” | 123456789012345 | 1.2e+14 | ||
| “0.0e+00” | 0.0000000123456 | 1.2e-08 | 
日付の書式記号
日付はy(年yearのy)、m(月monthのm)、d(日dayのd)、g(元号gengouのg?)、e(紀元eraのe?)、a(曜日)の5文字を利用します。
aaaとaaaaはどこからきてるんでしょうね。day of the weekのday3文字のdとyが使われているのでaaa?とかですかね。わかんないです。
表示値はセルに2017/9/28と入力した場合の値になります。
“年”などの追加したい文字を””で囲うと表示することができます。
| 書式記号 | 内容 | 表示値 | 
|---|---|---|
| “g” | 元号の英字表記 | H | 
| “gg” | 元号の漢字の省略表記 | 平 | 
| “ggg” | 元号 | 平成 | 
| “e” | 和暦1桁 | 29 | 
| “ee” | 和暦2桁 | 29 | 
| “r” | eeと同じ | 29 | 
| “rr” | gggeeと同じ | 平成29 | 
| “yy” | 西暦2桁 | 17 | 
| “yyyy” | 西暦4桁 | 2017 | 
| “m” | 月を1桁表記 | 9 | 
| “mm” | 月を2桁表記 | 09 | 
| “mmm” | 月を英語の省略表記 | Sep | 
| “mmmm” | 月を英語表記 | September | 
| “mmmmm” | 月の英字の頭文字表記 | J(January)からD(December) | 
| “d” | 日を1桁表記 | 28 | 
| “dd” | 日を2桁表記 | 28 | 
| “ddd” | 曜日を英語の省略表記 | Thu | 
| “dddd” | 曜日を英語表記 | Thursday | 
| “aaa” | 曜日の漢字の省略表記 | 木 | 
| “aaaa” | 曜日の漢字を表記 | 木曜日 | 
| “ggge年m月d日(aaaa)” | 和暦の年月日と曜日 | 平成29年9月28日(木曜日) | 
時刻の書式記号
時刻はh(時hour)、m(分minute)、s(秒second)、AM、PM、の5種類を利用します。
表示値はセルに23:01:40と入力した場合の値になります。表の最終行のみ123:01:40と入力した場合の値です。
時・分・秒には表現できる範囲がありますが、[h]や[m]や[s]のように[]で囲うと上限を超えて経過時間として表示できます。
また、日付と同様に”時”などダブルクォーテーションで追加したい文字を表示することができます。
| 書式記号 | 内容 | 表示値 | 
|---|---|---|
| “h” | 0~23時 | 23 | 
| “hh” | 00~23時 | 23 | 
| “m” | 0~59分(hやsと一緒に使用すると分とみなされる。右の表示値はh:m) | 23:1 | 
| “mm” | 00~59分(hやsと一緒に使用すると分とみなされる。右の表示値はhh:mm) | 23:01 | 
| “s” | 0~59秒 | 40 | 
| “ss” | 00~59秒 | 40 | 
| “h AM/PM” | 0~23時を12時間ずつでAM/PM表記 | 11 PM | 
| “h:mm AM/PM” | 0:00~23:59を12時間ずつでAM/PM表記 | 11:01 PM | 
| “h:mm:ss A/P” | 0:00:00~23:59:59を12時間ずつでAM/PM表記 | 11:01:40 P | 
| “[h]:mm:ss” | 24時を超える表記可能な時刻 | 123:01:40 | 
| “h時m分s秒” | 時分秒表記 | 23時1分40秒 | 
その他の書式記号
上記の他にも以下の書式記号があります。
| 書式記号 | 内容 | 設定例 | 入力する値 | 表示値 | 
|---|---|---|---|---|
| “G/標準” “General”  | 
セルの初期表示の書式。入力内容に合わせて書式が変わる。NumberFormatLocalプロパティの場合は”G/標準”、NumberFormatプロパティの場合は”General”。 | “G/標準” | 1/1 | 1月1日 | 
| @ | 入力文字。複数設定した場合は入力文字を設定分表示する | @”円” | 12345 | 12345円 | 
| * | 直後の文字を繰り返す。隣接するセルと同じ書式の場合に幅揃えを行うことが出来る。 | @* “地区” | 北海道北部 | 北海道北部 地区 | 
| 福岡 | 福岡 地区 | |||
| [色] | 色を指定する。黒、赤、青、緑、黄、紫、水、白の8種類。 | [青]0;[赤]-0;[緑]0 | 10 | 10 | 
| -10 | -10 | |||
| 0 | 0 | |||
| [条件] | セミコロン(;)の左を真、右を偽として表示する | [>5]”5より多い”;”5以下” | 5 | 5以下 | 
| 6 | 5より多い | |||
| _ | アンダーバーの直後の文字の文字幅分を空けて表示する。 | _!@_!_!@_! | 123 | 123 123 |