書式

広告

書式では格納されているデータをデータシートビューなどで表示するときの表示書式を設定することが出来ます。

テキスト型の場合にはデータが含まれている場合と、Nullや長さが0の文字列の場合の2つの場合で書式を分けて指定することが可能です。

まずデータが含まれている場合の書式の指定の仕方です。任意の文字の他に4つの書式指定文字が用意されています。

記号内容
@文字が存在する場合はその文字を、文字が存在しない場合は空白を表示します。
&文字が存在する場合はその文字を表示し、文字が存在しない場合は何も表示しません。
<すべて小文字にします (アルファベットのみ)。
>すべて大文字にします (アルファベットのみ)。

「@」と「&」の使い方は少し注意が必要です。具体例を見ながら確認していきます。

テキスト型の書式の設定

テキスト型のフィールドが1つだけあるテーブルを作成し、上記のように3つのレコードを登録してあります。この時点では書式は設定していません。

ではデザインビューに戻り、書式に「@」とだけ指定してみます。

テキスト型の書式の設定

「@」や「&」の場合は記述した数だけ右側から適用されます。1文字だけ「@」と書いた場合には格納されているデータの右側の1文字に対してこの書式が適用されます。「@」の場合は文字が存在すればその文字を表示しますのでデータシートビューに移っても見た目は変わりありません。

テキスト型の書式の設定

では次に書式に「@-@」と記述して下さい。この「-」のように書式では先ほど書いた4つの書式指定文字以外に任意の文字を指定できます。

テキスト型の書式の設定

ではデータシートビューに切り替えてみます。

テキスト型の書式の設定

今回の場合は「@」が2つ使われていますので右側から2つの文字が対象となります。この2つの文字はそのまま表示しつつ書式として「-」が設定されているため、右から1つ目の文字と2つ目の文字の間に「-」が表示されています。

では次に書式に「(@@-@@-@@)」と記述して下さい。

テキスト型の書式の設定

ではデータシートビューに切り替えてみます。

テキスト型の書式の設定

今回は「@」が6個使われていますので右側から6個の文字が対象となります。今回は6文字に満たないデータが含まれているレコードがありますが、「@」の場合は文字が存在しない場合は空白を表示します。

では次に書式に「(&&-@@-@@)」と記述して下さい。

テキスト型の書式の設定

ではデータシートビューに切り替えてみます。

テキスト型の書式の設定

1つ前のサンプルと似ていますが、今回は右から数えて5番目と6番目の文字の書式指定に「@」の代わりに「&」が使われていますので、文字がある場合はその値を使い、文字が存在しない場合は何も表示しません。1つ前のサンプルと比較してみて下さい。

大文字から小文字へ、小文字から大文字へ

次に書式として「<」と「>」について見ていきます。この書式が設定された場合「<」の場合には入力されたデータの中にアルファベットがある場合は全て小文字にします。「>」の場合にはアルファベットを大文字にします。

実際に試してみます。

テキスト型の書式の設定

テキスト型のフィールドが2つあるテーブルを作成し、上記のように3つのレコードを登録してあります。この時点では書式は設定していません。

ではデザインビューに戻り、最初のフィールドの書式に「<」を、次のフィールドの書式に「>」を指定してみます。

テキスト型の書式の設定

テキスト型の書式の設定

ではデータシートビューに切り替えてみます。

テキスト型の書式の設定

書式に「<」を設定した最初のフィールドは全て小文字に、書式に「>」を設定した2番目のフィールドは全て大文字に変換されて表示されます。

Null又は長さが0の文字列の場合の書式の指定

テキスト型に対する書式では通常の書式の指定の他に、含まれているデータがNullであったり長さ0の文字だった場合用に別の書式を同時に指定することが可能です。次のように通常の書式と特別な書式をセミコロン(;)で結んで記述します。

通常の書式;Null又は長さ0の場合の書式

例としてデータがNullであったり長さが0の文字列だった場合は「(未入力)」と表示するように設定してみます。(データがある場合はそのまま表示するだけにしてあります)。

テキスト型の書式の設定

テキスト型のフィールドが1つあるテーブルを作成し、上記のように3つのレコードを登録してあります。この時点では書式は設定していません。

ではデザインビューに戻り、書式に「@;"(未入力)"」を指定してみます。

テキスト型の書式の設定

ではデータシートビューに切り替えてみます。

テキスト型の書式の設定

格納されているデータがNullや長さが0の文字列だったレコードでは表示が「(未入力)」になっているのが確認できます。

( Written by Tatsuo Ikura )