FORMAT_STRING の内容 (MDX)

FORMAT_STRING セル プロパティは、VALUE セル プロパティを書式設定して、FORMATTED_VALUE セル プロパティの値を作成します。FORMAT_STRING セル プロパティは文字列と数値列の値を処理し、その値にフォーマット式を適用して、FORMATTED_VALUE セル プロパティ用に書式設定した値を返します。次の表は、文字列および数値の処理に使用する構文および書式文字の詳細を示しています。

文字列の値

文字列のフォーマット式には、1 つのセクション、またはセミコロン (;) で区切った 2 つのセクションを含めることができます。

使用法

結果

1 つのセクション

この書式はすべての文字列の値に適用されます。

2 つのセクション

最初のセクションは文字列のデータに適用され、2 番目のセクションは NULL 値および長さ 0 の文字列 ('''') に適用されます。

文字列用の書式文字列には、次の表の文字を含めることができます。

文字

説明

@

1 つの文字またはスペースを表示する、文字のプレースホルダ。文字列の中で、書式文字列のアット マーク (@) に該当する位置に文字がある場合、書式設定された文字列にはその文字が表示されます。それ以外の場合は、書式設定された文字列のその位置にスペースが表示されます。プレースホルダは、書式文字列に感嘆符 (!) がない限り、右側から左側に向かって指定されます。

&

1 つの文字を表示するか、または何も表示しない、文字のプレースホルダ。文字列の中で、アンパサンド (&) に該当する位置に文字がある場合、書式設定された文字列にはその文字が表示されます。それ以外の場合、書式設定された文字列には何も表示されません。プレースホルダは、書式文字列に感嘆符 (!) がない限り、右側から左側に向かって指定されます。

<

強制的に小文字にします。書式設定された文字列には、すべての文字が小文字で表示されます。

>

強制的に大文字にします。書式設定された文字列には、すべての文字が大文字で表示されます。

!

プレースホルダを左から右に指定していくように強制的に設定します。既定では、プレースホルダは右から左に指定していくように設定されています。

数値

数値に対するユーザー定義のフォーマット式には、1 つのセクションからセミコロンで区切った 4 つのセクションまでを任意の場所に含めることができます。フォーマット引数にいずれかの名前付き数値書式が含まれている場合、使用できるセクションは 1 つだけです。

使用法

結果

1 つのセクション

このフォーマット式は、すべての値に適用されます。

2 つのセクション

最初のセクションは正の値および 0 に適用され、2 番目のセクションは負の値に適用されます。

3 つのセクション

最初のセクションは正の値に、2 番目のセクションは負の値に、3 番目のセクションは 0 に適用されます。

4 つのセクション

最初のセクションは正の値に、2 番目のセクションは負の値に、3 番目のセクションは 0 に、そして 4 番目のセクションは NULL 値に適用されます。

次の例には 2 つのセクションが含まれています。最初のセクションは正の値と 0 の書式を定義し、2 番目のセクションは負の値の書式を定義します。

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

連続したセミコロンを含めた場合、欠落したセクションは正の値の書式を使用して出力されます。たとえば、次の書式では、最初のセクションの書式を使用して正と負の値が表示され、その値が 0 の場合は、"Zero" と表示されます。

"$#,##0;;\Z\e\r\o"

次の表は、数値書式の書式文字列に使用できる文字を示しています。

文字

説明

なし

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

0

1 つの数字または 0 を表示する、数字のプレースホルダ。

数値の中で、書式文字列の 0 に該当する位置に数字がある場合、書式設定された値にはその数字が表示されます。それ以外の場合は、書式設定された値のその位置に 0 が表示されます。

数字の数が書式文字列の 0 の数 (小数点の両側を含む) より少ない数値の場合、書式設定された値には先頭または後ろに 0 が表示されます。

小数点記号の右側の数字の数がフォーマット式の小数点区切り文字の右側の 0 の数より多い数値の場合、書式設定された値は、小数点以下の数字の数が 0 の数と同じになるように丸められます。

小数点区切り文字の左側の数字の数が、フォーマット式の小数点区切り文字の左側の 0 の数より多い数値の場合、書式設定された値には追加の数字が修正されずに表示されます。

#

1 つの数字を表示するか、または何も表示しない、数字のプレースホルダ。

式の中で、書式文字列のシャープ記号 (#) に該当する位置に数字がある場合、書式設定された値にはその数字が表示されます。それ以外の場合は、書式設定された値のその位置には何も表示されません。

シャープ記号 (#) プレースホルダの機能はゼロ (0) プレースホルダとほぼ同じです。ただし、先頭または後ろの 0 は、数値の数字の数が、フォーマット式の小数点区切り文字の左側または右側の # 文字の数と同じ、またはより少ない場合に表示されません。

.

小数点区切り文字の左右に表示される数字の数を決定する、小数点のプレースホルダ。

フォーマット式の中で、ピリオド (.) の左側にシャープ記号 (#) 文字だけがある場合、1 未満の数値は小数点区切り文字から始まります。小数部の前に 0 を表示するには、小数点区切り文字の左側に使用する最初の数字プレースホルダとして 0 を使用してください。

書式設定された出力で実際にどの文字が小数点のプレースホルダとして使用されるかは、コンピュータ システムが認識する数値書式によって決まります。

注意注意
いくつかのロケールでは、小数点区切り文字としてコンマが使用されます。

%

パーセンテージのプレースホルダ。式に 100 を乗算します。書式文字列のパーセンテージに該当する位置に、パーセント記号 (%) が挿入されます。

,

1000 単位の区切り文字。小数点区切り文字の左側が 4 桁以上である数値の中で、百の位と千の位を区切ります。

書式に含まれる数字のプレースホルダ (0 または #) の間に 1000 単位の区切り文字が含まれている場合、標準的な 1000 単位の区切り文字を使用するように指定されます。

小数が指定されているかどうかに関係なく、小数点区切り文字のすぐ左側に 1000 単位区切り文字を 2 つ連続して使用する、あるいは 1000 単位区切り文字を 1 つ使用すると、「数値を 1000 で除算して縮小し、必要に応じて丸める」という意味になります。たとえば、書式文字列 "##0,," を使用すれば 100,000,000 を 100 と表示できます。1,000,000 未満の数は 0 と表示されます。小数点区切り文字のすぐ左側以外の位置に 2 つの隣接する 1000 単位区切り文字を使用すると、1 つの 1000 単位区切り文字を指定しているものとして扱われます。

書式設定された出力で実際にどの文字が 1000 単位の区切り文字として使用されるかは、コンピュータ システムが認識する数値書式によって決まります。

注意注意
いくつかのロケールでは、1000 単位の区切り文字としてピリオドが使用されます。

:

時刻区切り文字。時刻の値を書式設定する際に、時、分、秒を区切ります。

注意注意
いくつかのロケールでは、時刻区切り文字として他の文字が使用されることがあります。

書式設定された出力で実際にどの文字が時刻区切り文字として使用されるかは、コンピュータのシステム設定によって決まります。

/

日付区切り文字。日付の値を書式設定する際に、年、月、日を区切ります。

書式設定された出力で実際にどの文字が日付区切り文字として使用されるかは、コンピュータのシステム設定によって決まります。

注意注意
いくつかのロケールでは、日付区切り文字として他の文字が使用されることがあります。

E- E+ e- e+

指数書式。

フォーマット式の中で、E-E+e-、または e+ の右側に少なくとも 1 つの数字のプレースホルダ (0 または #) が含まれる場合、書式設定された値は指数書式で表示され、数値と指数の間に E または e が挿入されます。右側にある数字のプレースホルダの数によって指数内の数字の数が決まります。負の指数の横にマイナス記号を付けるには、E- または e- を使用します。負の指数の横にマイナス記号を付け、正の指数の横にプラス記号を付けるには、E+ または e+ を使用します。

- + $ ( )

リテラル文字を表示します。

この一覧に含まれていない文字を表示するには、文字の前に円記号 (\) を付けるか、文字を二重引用符 (" ") で囲みます。

\

書式文字列の次の文字を表示します。

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

  • 日付の書式設定文字と時刻の書式設定文字 — acdhmnpqstwy/、および :

  • 数値の書式設定文字 — #0%Eeコンマ、およびピリオド

  • 文字列の書式設定文字 — @&<>、および !

"ABC"

二重引用符 (" ") 内の文字列を表示します。

コード内で書式に文字列を含めるには、Chr(34) を使ってテキストを囲みます (二重引用符の文字コードは 34 です)。

名前付き数値書式

次の表は、定義済み数値書式の名前を示しています。

書式名

説明

General Number

桁区切り記号を付けずに数値を表示します。

Currency

必要に応じて、桁区切り記号を付けて数値を表示します。小数点区切り文字の右側に 2 桁の数字が表示されます。出力はシステムのロケール設定に基づきます。

Fixed

少なくとも、小数点区切り文字の左側に 1 桁、右側に 2 桁の数字を表示します。

Standard

桁区切り記号を付けて数値を表示します。少なくとも小数点区切り文字の左側に 1 桁、右側に 2 桁の数字を表示します。

Percent

数値を 100 倍して、右側にパーセント記号 (%) を付けて表示します。小数点区切り文字の右側には、常に 2 桁の数字が表示されます。

Scientific

標準的な科学的表記法を使用します。

Yes/No

数値が 0 の場合は "No"、それ以外の場合は "Yes" を表示します。

True/False

数値が 0 の場合は "False"、それ以外の場合は "True" を表示します。

On/Off

数値が 0 の場合は "Off"、それ以外の場合は "On" を表示します。

日付の値

次の表は、日付/時刻形式の書式文字列で使用できる文字を示しています。

文字

説明

:

時刻区切り文字。時刻の値を書式設定する際に、時、分、秒を区切ります。

書式設定された出力で実際にどの文字が時刻区切り文字として使用されるかは、コンピュータのシステム設定によって決まります。

注意注意
いくつかのロケールでは、時刻区切り文字として他の文字が使用されることがあります。

/

日付区切り文字。日付の値を書式設定する際に、年、月、日を区切ります。

書式設定された出力で実際にどの文字が日付区切り文字として使用されるかは、コンピュータのシステム設定によって決まります。

注意注意
いくつかのロケールでは、日付区切り文字を表すために他の文字が使用されることがあります。

C

日付を ddddd、時刻を ttttt として、この順序で表示します。

日付のシリアル番号に小数部がない場合は、日付情報だけを表示します。整数部がない場合は、時刻情報だけを表示します。

d

前に 0 を付けない数値 (1 ~ 31) で日を表示します。

dd

前に 0 を付けた数値 (01 ~ 31) で日を表示します。

ddd

曜日の省略形 (Sun ~ Sat) で日を表示します。

dddd

曜日の完全な名前 (Sunday ~ Saturday) で日を表示します。

ddddd

日付を完全な日付 (年、月、日) で表示します。表示形式はシステムの短縮日付の書式設定に従います。

Microsoft Windows では、既定の短縮日付フォーマットは m/d/yy です。

dddddd

日付のシリアル番号を完全な日付 (年、月、日) で表示します。表示形式は、コンピュータ システムが認識する長い日付の書式設定に従います。

Windows では、既定の長い日付フォーマットは mmmm dd, yyyy です。

w

曜日を数値で表示します (日曜日が 1、土曜日が 7)。

ww

1 年のうちの何週目であるかを数値 (1 ~ 54) で表示します。

m

前に 0 を付けない数値 (1 ~ 12) で月を表示します。

h または hh のすぐ後に m がある場合、月ではなく分が表示されます。

mm

前に 0 を付けた数値 (01 ~ 12) で月を表示します。

h または hh のすぐ後に mm がある場合、月ではなく分が表示されます。

mmm

月名の省略形 (Jan ~ Dec) で月を表示します。

mmmm

完全な月名 (January ~ December) で月を表示します。

q

1 年のうち何番目の四半期であるかを数値 (1 ~ 4) で表示します。

y

1 年のうちの何日目であるかを数値 (1 ~ 366) で表示します。

yy

西暦の年を下 2 桁の数値 (00 ~ 99) で表示します。

yyyy

西暦の年を 4 桁の数値 (100 ~ 9999) で表示します。

h

前に 0 を付けない数値 (0 ~ 23) で時間を表示します。

hh

前に 0 を付けた数値 (00 ~ 23) で時間を表示します。

n

前に 0 を付けない数値 (0 ~ 59) で分を表示します。

nn

前に 0 を付けた数値 (00 ~ 59) で分を表示します。

s

前に 0 を付けない数値 (0 ~ 59) で秒を表示します。

ss

前に 0 を付けた数値 (00 ~ 59) で秒を表示します。

t t t t t

時刻を完全な時刻 (時間、分、秒) で表示します。表示形式は、コンピュータ システムが認識する時刻書式で定義された時刻区切り文字を使用します。

先頭にゼロを付けるオプションを選択した場合、午前または午後の 10:00 より早い時刻であれば、前にゼロが表示されます (たとえば 09:59)。

Windows では、既定の時刻書式は h:mm:ss です。

AM/PM

午前 0 時から正午までの時間に大文字の AM、正午から午前 0 時までの時間に大文字の PM をそれぞれ付けて表示します。

注意注意
12 時間形式を使用します。

am/pm

午前 0 時から正午までの時間に小文字の am、正午から午前 0 時までの時間に小文字の pm をそれぞれ付けて表示します。

注意注意
12 時間形式を使用します。

A/P

午前 0 時から正午までの時間に大文字の A、正午から午前 0 時までの時間に大文字の P をそれぞれ付けて表示します。

注意注意
12 時間形式を使用します。

a/p

午前 0 時から正午までの時間に小文字の a、正午から午前 0 時までの時間に小文字の p をそれぞれ付けて表示します。

注意注意
12 時間形式を使用します。

AMPM

午前 0 時から正午までの時間にコンピュータ システム定義の AM 文字列リテラルを、正午から午前 0 時までの時間にコンピュータ システム定義の PM 文字列リテラルをそれぞれ付けて表示します。

注意注意
12 時間形式を使用します。

AMPM は大文字、小文字のいずれでもかまいません。ただし、表示される文字列の大文字、小文字の区別は、コンピュータのシステム設定で定義された文字列に一致します。

Windows の場合、既定の書式は AM/PM です。

名前付き日付形式

次の表は、定義済みの日付/時刻形式の名前を示しています。

形式名

説明

General Date

日付か時刻、または両方を表示します。実数の場合は、日付と時刻を表示します ("4/3/93 05:34 PM" など)。小数部分がない場合は、4/3/93 のように、日付のみを表示します。整数部分がない場合は、05:34 PM のように、時刻のみを表示します。日付の表示形式は、システム設定によって決まります。

Long Date

システムの長い日付形式に従って日付を表示します。

Medium Date

ホスト アプリケーションの言語バージョンに適切な中間の長さの日付形式で日付を表示します。

Short Date

システムの短い日付形式を使用して日付を表示します。

Long Time

システムの長い時刻形式を使用して、時、分、および秒を含む時刻を表示します。

Medium Time

時、分、および AM/PM 指定子を使用して、12 時間形式で時刻を表示します。

Short Time

24 時間形式を使用して時刻を表示します (たとえば 17:45)。