式を使用して文字列値を結合する

Access で複数のテキスト フィールド内の値を結合する場合は、アンパサンド (&) 演算子を使用する式を作成します。たとえば、"社員" という名前のフォームがあるとします。各社員の姓と名は別々のフィールドに入力しますが、フォーム ヘッダーには社員の氏名を表示したいと考えています。

氏名を表示するには、次の式を使用できます。

=[姓] & " " & [名]

この式では、& 演算子を使用して "姓" フィールドの値と "名" フィールドの値を結合しています。また、この式では、スペース文字で区切られた 2 つの二重引用符 (") を使用することで、名と姓の間にスペースを挿入しています。スペース、句読点、文字列などを 2 つのフィールドの間に挿入する場合は、その追加する値を引用符で囲む必要があります。

別の例としては、次の式を使用すると、姓と名をコンマとスペースで区切って表示できます。

=[姓] & ", " & [名]

この場合、式では、"姓" フィールドと "名" フィールドの間に引用符で囲まれたコンマとスペースが挿入されます。

次の一連の手順は、"姓" および "名" というフィールドのあるテーブルに基づいたフォームを使用することを前提としています。それ以外の状況では、手順 6. の式を任意のデータに合わせて変更できます。

テキスト ボックスを追加して氏名の式を設定する

  1. ナビゲーション ウィンドウで、変更するフォームまたはレポートを右クリックし、ショートカット メニューの [デザイン ビュー] をクリックします。

  2. [デザイン] タブの [コントロール] グループで [テキスト ボックス] をクリックします。

  3. ポインターをフォームまたはレポートにドラッグしてテキスト ボックスを作成します。

  4. テキスト ボックスを右クリックし、ショートカット メニューの [プロパティ] をクリックします。

  5. プロパティ シートで、[データ] タブをクリックします。

  6. [コントロール ソース] プロパティ ボックスの値を =[姓] & " " & [名] に変更します。

  7. プロパティ シートを閉じて、変更内容を保存します。

場合によっては、結合するフィールドの 1 つに値が含まれていないこともあります。このようにデータのない状態は Null 値と呼ばれます。値のないフィールドに対して & 演算子を使用すると、Access は、そのフィールドについて長さ 0 の文字列を返します。たとえば、社員のレコードに姓しか含まれていない場合、前の例の式では、"姓" フィールドの値、スペース文字、および "名" フィールドとして長さ 0 の文字列が返されます。

"名" が存在しない場合の式の結果の例

1. "姓" フィールドにデータがないため、"泰江" の前に長さ 0 の文字列とスペースが挿入されます。

複数のフィールドの値を別の新しい文字列として結合するときには、特定のフィールドにデータが存在する場合にのみ、コンマなどの値を新しい文字列に含めたいことがあります。条件付きで値を含めるには、& 演算子の代わりに + 演算子を使用してフィールドを結合します。たとえば、"顧客" という名前のテーブルがあり、そのテーブルに "郵便番号"、"都道府県"、および "市区町村" という名前のフィールドが含まれているとします。レポート用にこれらのフィールドの値を結合する必要がありますが、一部のレコードでは "都道府県" フィールドに値が含まれていません。この場合、& 演算子を使用してフィールドを結合すると、市区町村の値の前に不必要なコンマが挿入されることになります。

不必要なコンマを除去するには、次の例の式に示されているように、プラス (+) 演算子を使用します。

=([郵便番号] & (", " + [都道府県]) & " " & [市区町村])

+ 演算子は、& 演算子と同じように文字列を結合します。ただし、+ 演算子では、いわゆる "Null 値の反映" もサポートしています。Null 値の反映により、式の要素が 1 つでも Null である場合は、式全体の結果も常に Null になります。前の例の式の (", " + [都道府県]) という部分に注目してください。+ 演算子が使用されているため、内側のかっこ内で評価される式は、"都道府県" フィールドに値が存在する場合にのみ、コンマが含まれます。"都道府県" フィールドに値が存在しない場合は、Null 値の反映が有効になり、内側のかっこ内の式が Null 値として評価されるので、コンマは非表示になります。

状態が指定されに場合の数式結果の例

1. "都道府県" に値が含まれているレコードは、コンマ、スペース、都道府県が追加された形式で表示されます。

2. "市区町村" フィールドの値が "豊島区" のレコードには都道府県が指定されていないため、式の結果にコンマ、スペース、都道府県は表示されません。

ページの先頭へ

スキルを磨く
トレーニングの探索
新機能を最初に入手
Office Insider に参加する

この情報は役に立ちましたか?

ご意見をいただきありがとうございます。

フィードバックをお寄せいただき、ありがとうございます。Office サポートの担当者におつなぎいたします。

×