ユーザー定義の数値書式 (Format 関数)

更新 : 2007 年 11 月

ユーザー定義の数値書式を作成するときに使用できる文字を次の表に示します。これらは Format 関数の Style 引数の構築に使用できます。

文字

説明

なし

書式指定なしで数値を表示します。

(0)

桁のプレースホルダです。数字またはゼロを表示します。式が、書式指定文字列でゼロが指定されている場所を使っている場合は、該当する数字がその桁に表示されます。それ以外の場合は、その場所にゼロを表示します。

数値の整数部または小数部の桁数が、書式指定式内の 0 の桁数に満たない場合は、その桁位置には 0 が付加されます。数値の小数部の桁数が、書式指定式の小数部で指定されているゼロの数より多い場合は、ゼロの数と同じ桁数に数値が丸められます。数値の整数部の桁数が、書式指定式の整数部のゼロの数より多い場合は、桁をそのまま表示します。

(#)

桁のプレースホルダです。数字を表示するか、何も表示しません。書式指定文字列で # が指定されている場所に該当する桁が、式の結果にある場合は、該当する数字が表示されます。それ以外の場合は、その場所には何も表示されません。

この記号は 0 桁プレースホルダと同様の機能を持ちます。ただし、数値の桁数が、書式指定式の整数部および小数部にある # 記号よりも少ない場合でも、先頭および末尾にゼロが表示されません。

(.)

小数点のプレースホルダです。小数点のプレースホルダにより、整数部および小数部に表示する桁数が決まります。書式指定式でこの記号の左に # 記号だけがある場合、1 未満の数値の先頭は小数点区切り記号になります。小数値の先頭にゼロを表示するには、整数部の最初の桁プレースホルダとしてゼロを使用します。ロケールによっては、小数点の区切り記号としてコンマが使用されます。書式指定結果で小数点のプレースホルダとして実際に使用される記号は、システムで認識される数値書式によって異なります。したがって、小数点のプレースホルダとしてコンマを使用するロケールであっても、書式指定の中ではピリオドを小数点プレースホルダとして使用する必要があります。書式指定された文字列は、ロケールに対して適切な書式で表現されます。

(%)

パーセントのプレースホルダです。式を 100 倍します。書式指定文字列の表示位置にパーセント記号 (%) が挿入されます。

(,)

3 桁ごとの区切り記号です。3 桁ごとの区切り記号は、整数部に 4 桁以上ある数値の百の位と千の位を区切ります。書式にある 3 桁ごとの桁区切り記号が桁のプレースホルダ (0 または #) で囲まれている場合は、3 桁とごの桁区切り記号の標準使用が指定されます。

小数部の指定の有無にかかわらず、小数点のすぐ左に 3 桁ごとの区切り記号がある場合、または文字列の一番右に桁区切り記号がある場合は、"数値を 1,000 で割って、必要に応じて丸める" ことを意味します。500 以上で 1,000 未満の数値は 1 として表示され、500 未満の数値は 0 として表示されます。同じ位置で 3 桁ごとの区切り記号が 2 つ隣接する場合は、100 万で割って変換します。このように、桁区切り記号が増えるごとに 1,000 倍の係数で変換されます。

小数点のすぐ左、または文字列の一番右以外の位置に複数の区切り記号がある場合は、通常の 3 桁ごとの区切り記号を指定したものとして単純に処理されます。ロケールによっては、3 桁ごとの区切り記号としてピリオドが使用されます。書式指定された出力で、実際に 3 桁ごとの区切り記号として使用される記号は、システムで認識される数値書式によって異なります。したがって、桁区切り記号としてピリオドを使用するロケールであっても、書式指定の中ではコンマを 3 桁の桁区切り記号として使用する必要があります。書式指定された文字列は、ロケールに対して適切な書式で表現されます。

たとえば、次の 3 つの書式指定文字列があるとします。

  • "#,0." とした場合、1 億という数値は、桁区切り記号を用いて "100,000,000" という文字列形式で表記されます。

  • "#0,." とした場合、1 億という数値は、1000 で割って位取りした数値、つまり、"100000" という文字列になります。

  • "#,0,." とした場合、1 億という数値は、1000 で割って位取りした結果が、桁区切り記号を用いて "100,000" という文字列形式で表記されます。

(:)

時刻の区切り記号。ロケールによっては、時刻の区切り記号を表すのに別の記号が使用されます。時刻の区切り記号は、時刻値を表すときに、時、分、および秒を区切ります。書式指定された出力で、実際に時刻の区切り記号として使用される記号は、システム設定によって異なります。

(/)

日付の区切り記号。ロケールによっては、日付の区切り記号を表すのに別の記号が使用されます。日付の区切り記号は、日付値を表すときに、年月日を区切ります。書式指定された出力で、実際に日付の区切り記号として使用される記号は、システム設定によって異なります。

(E-E+e-e+)

指数形式。書式指定式で、E-、E+、e-、または e+ の左に少なくとも 1 つの桁プレースホルダー (0 または #) がある場合、数値は、数値と指数部の間に E または e を挿入して指数形式で表示されます。左にある桁プレースホルダの数で、指数の桁数が決まります。負の指数の左にマイナス記号を挿入するには、E- または e- を使用します。負の指数の左にマイナス記号を入れて、正の指数の左にプラス記号を入れるには、E+ または e+ を使用します。書式が適切に設定されるように、この記号の右には桁プレースホルダも入れておく必要があります。

-+$ ( )

リテラル文字です。これらの文字は書式指定文字列に入力したとおりに表示されます。一覧にない文字を表示するには、その文字の前に円記号 (\) を付けるか、または二重引用符記号 (" ") で囲みます。

(\)

書式指定文字列内の次の文字を表示します。特殊な意味を持つ文字をリテラル文字として表示するには、その文字の前に円記号 (\) を付けます。円記号自体は表示されません。円記号を使用するのは、その文字を二重引用符記号で囲むことと同じです。円記号を表示するには、円記号を 2 つ (\\) 使用します。

リテラル文字として表示できない文字には次のような文字があります。日付書式文字および時刻書式文字 (a、c、d、h、m、n、p、q、s、t、w、y、/、および :)、数値書式文字 (#、0、%、E、e、コンマ、およびピリオド)、および文字列書式文字 (@、&、<、>、および !)。

("ABC")

二重引用符 (") で囲まれた文字列を表示します。コードからスタイル引数に文字列を含めるには、Chr(34) を使ってテキストを囲みます (34 は引用符 (") を表す文字コードです)。

使用例

数値の書式指定式の例を次に示します。以下の例は、システムのロケール設定が English-U.S. であることを前提としています。最初の列は、Format 関数の Style 引数に対応する書式指定文字列です。その他の列は、書式指定されたデータに列見出しの値が設定されている場合の結果出力です。

書式 (Style)

"5" の出力結果

"-5" の出力結果

"0.5" の出力結果

Zero-length string ("")

5

-5

0.5

0

5

-5

1

0.00

5.00

-5.00

0.50

#,##0

5

-5

1

$#,##0;($#,##0)

$5

($5)

$1

$#,##0.00;($#,##0.00)

$5.00

($5.00)

$0.50

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

必要条件

名前空間 : Microsoft.VisualBasic

モジュール : Strings

**アセンブリ :**Visual Basic ランタイム ライブラリ (Microsoft.VisualBasic.dll)

参照

参照

文字列操作の概要

変換の概要

数値ごとに異なる書式指定 (Format 関数)

Format 関数

定義済み数値書式 (Format 関数)

ユーザー定義の日付/時刻書式 (Format 関数)