数値表示書式指定文字 (Format関数)


Microsoft Visual Basic ヘルプより抜粋


数値表示書式指定文字 (Format関数)

次の表は、数値表示書式指定文字とその内容を示します。これらの文字を
組み合わせて、ユーザー定義の書式を指定することができます。

文字    内容

なし    指定した数値をそのまま返します。

(0)     桁位置や桁数を指定するときに使います。引数 format に指定した
        書式文字列内の表示書式指定文字 "0" 1 つで、数値の 1 桁を表し
        ます。変換対象の数値 (式) が、"0" で指定された桁位置を使って
        いる場合は、その桁に該当する値が入ります。変換対象の数値の桁
        数が少なく、指定された桁位置に該当する値がない場合は、その桁
        には 0 が入ります。

        引数 expression に指定した数値の整数部または小数部の桁数が、
        指定書式内の "0" の桁位置に満たない場合は、その桁位置には 0 
        が付加されます。また、数値の小数部の桁数が小数部に指定した
        "0" の桁位置を超える場合には、数値の小数部は指定の桁位置に合
        わせて四捨五入されます。逆に、整数部の桁数が整数部に指定した
        "0" の桁位置を超える場合には、整数部は変更されることなく、す
        べて表示されます。
 
(#)     桁位置や桁数を指定するときに使います。引数 format に指定した
        書式文字列内の表示書式指定文字 "#" 1 つで、数値の 1 桁を表し
        ます。 変換対象の数値 (expression) が "#" で指定された桁位置
        を使っている場合は、その桁に該当する値が入ります。変換対象の
        数値の桁数が少なく、指定された桁位置に該当する値がない場合は
        その桁には何も入りません。

        この記号は表示書式指定文字の "0" と同じような働きをしますが、
        数値の小数部や 整数部の桁数が "#" で指定された桁位置に満たな
        い場合に 0 は挿入されず、その桁には何も入りません。
 
(.)     表示書式指定文字 ("0" または "#") と組み合わせて、小数点の位
        置を指定するときに使います。表示する桁数を指定するとき、この
        表示書式指定文字の位置によって、整数部と小数部が区別されます。
        指定書式内で "." の左側に "#" だけが指定されている場合は、1 
        未満の数値は小数点記号から始まります。 数値が 1 未満の場合に
        小数点記号の左側に常に 0 が付くようにするには、指定書式内で
        " " の左側に "#" ではなく "0" を指定します。変換後の小数点記
        号は、オペレーティングシステムの国別情報の設定によって決まり
        ます。 

(%)     数値を 100 倍し、パーセント記号 (%) を付けるときに指定します。

(,)     1000 単位の区切り記号を挿入するときに指定します。整数部が
        4 桁以上ある数値については、1000 単位の区切り記号が付きます。
        変換後の 1000 単位の区切り記号は、オペレーティングシステムの
        国別情報の設定によって決まります。通常、この表示書式指定文字
        "," の前後に "0" または "#" を指定して使います。この表示書式
        指定文字 "," の右側に "0" も "#" も指定しない場合、 つまり、
        整数部の右端にこの表示書式指定文字 "," を 1 つ、または 2 つ
        以上続けて指定した場合(小数部の表示指定の有無は任意)、変換対
        象の数値は 1000 単位で割った値に変換されます。このとき、値は
        桁位置の指定に応じて丸められます。たとえば、書式指定文字列と
        して "##0,," と指定すると、数値 100000000 (1 億) は、100 に
        変換されます。100 万未満の数値は 0 となります。 整数部の右端
        以外でこの表示書式指定文字 "," を 2 つ以上続けて指定した場合
        は、"," を 1 つ指定したときと同じになります。

(:)     時刻の区切り記号を挿入するときに指定します。時刻を時間、分、
        秒で区切ることができます。変換後の時刻の区切り記号は、オペレ
        ーティング システムの国別情報の設定によって決まります。

(/)     日付の区切り記号を挿入するときに指定します。日付を年、月、日
        で区切ることができます。変換後の区切り記号は、オペレーティン
        グシステムの国別情報の設定によって決まります。

(E- E+  指数表記で表すときに指定します。" E-"、"E+"、"e-"、"e+" の
 e- e+) いずれかの右側に "0" または "#" を 1 つ以上指定すると、数値
        は指数表記で表され、整数部と指数部の間に e または E が挿入さ
        れます。これらの表示書式指定文字の右側に指定する "0"、または
        "#" の数は、指数部の桁数を示します。 "E-" や "e-" を使うと指
        数が負の場合にはマイナス記号が付きます。 "E+" や "e+" の場合
        は指数の正負に合わせてプラス記号かマイナス記号が付きます。

- + $   指定する文字をそのまま挿入します。これら以外の表示書式指定文
( ) ス  字を挿入するには、その前に円記号 (\) を付けるか、ダブルクォー
ペース  テーション (" ") で囲みます。

(\)     すぐ後に続く 1 文字をそのまま表示します。 書式指定の中で、特
        別な意味を持っている "#" または "E" などの文字を文字として、
        そのまま表示するには、その文字の前に円記号 (\) を付けます。
        この場合、前に付けた円記号 (\) は表示されません。 文字をダブ
        ルクォーテーション (" ") で囲んでも、同じです。円記号 (\) を
        挿入するには、円記号 (\) を 2 つ続けて記述します (\\)。

        そのままでは挿入できない文字としては、日付や時刻の表示書式指
        定文字 (a、c、d、h、m、n、p、q、s、t、w、y、/、:)、 数値の表
        示書式指定文字 (#、0、%、E、e、カンマ、ピリオド)、文字列の表
        示書式指定文字 (@、&、<、>、!) などがあります。
 
("ABC")  ダブルクォーテーション (" ") で囲まれた文字列は、そのまま
        挿入されます。 書式指定の引数 format に文字列を含めるには、
        Chr(34) を使って文字列を囲みます。文字コードではダブルクォー
        テーション (" ") は 34 になります。 



数値表示書式指定文字の使用例

  次の表は、数値の表示書式を指定した場合の例を示します。 国別情報が
日本語/日本に設定されているものと仮定します。1 番左の列は書式を示し
ます。 その右の各列は、それぞれ値の指定例に対する出力結果を示します。

指定した書式        正の数5     負の数5     小数.5     Null値
 (format) 
長さ 0 の文字列     5           -5          0.5      
 ("")
0                   5           -5          1        
0.00                5.00        -5.00       0.50     
#,##0               5           -5          1        
#,##0.00;;;Nil      5.00        -5.00       0.50       Nil
\\#,##0;\\-#,##0   \5           (\5)        \1       
\\#,##0.00;\\-     \5.00        (\5.00)     \0.50    
#,##0.00
0%                  500%        -500%       50%      
0.00%               500.00%     -500.00%    50.00%   
0.00E+00            5.00E+00    -5.00E+00   5.00E-01 
0.00E-00            5.00E00     -5.00E00    5.00E-01 

                                                                       back top