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

適用先
Access for Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

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

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

=[FirstName] & " " & [LastName]

この式では、 & 演算子を使用して、[ FirstName ] フィールドと [ LastName ] フィールドの値を組み合わせます。 また、二重引用符 (") をスペースで区切って、姓と名の間にスペースを挿入する場合にも使用します。 スペース、句読点、リテラル テキストなど、2 つのフィールドの間に何かを挿入する場合は、値を引用符で囲みます。

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

=[LastName] & ", " & [FirstName]

この場合、式は LastName フィールドと FirstName フィールドの間にカンマと二重引用符で囲まれたスペースを挿入します。

次の手順では、 FirstName と LastName という名前のフィールドを含むテーブルに基づくフォームがあることを前提としています。 それ以外の場合は、独自のデータに合わせて手順 6 の式を変更できます。

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

  1. ナビゲーション ウィンドウで、変更するフォームまたはレポートを右クリックし、ショートカット メニューの [デザイン ビュー] を選択します。
  2. [ フォーム デザイン ] タブまたは [レポート デザイン ] タブの [ コントロール ] グループで、[ テキスト ボックス] を選択します。
  3. ポインターをフォームまたはレポートにドラッグしてテキスト ボックスを作成します。
  4. テキスト ボックスを右クリックし、ショートカット メニューの [プロパティ ] を選択します。
  5. プロパティ シートで、[ データ ] タブを選択します。
  6. [ コントロール ソース ] プロパティ ボックスの値を =[FirstName] & " " & [LastName] に変更します。
  7. プロパティ シートを閉じて、変更内容を保存します。

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

  1. FirstName フィールドにはデータがないため、Martinez の先頭には長さ 0 の文字列とスペースが続きます。

複数のフィールドの値を新しい文字列に結合する場合、コンマなどの値を含めたいのは、特定のフィールドにデータが存在する場合のみです。 これを行うには、&演算子の代わりに + 演算子を使用してフィールドを結合します。 たとえば、City、State、Postal Code という名前のフィールドを含む Customer という名前のテーブルがあるとします。 これらのフィールドの値をまとめてレポートを作成しますが、レコードによっては [ State ] フィールドの値がない場合があります。 その場合、 & 演算子を使用すると、郵便番号の前に不要なコンマが表示されます。

不要なコンマを削除するには、次の式に示すように、 + 演算子を使用します。

=([City] & (", " + [State]) & " " & [PostalCode])

+ 演算子は、& 演算子と同じ方法でテキストを結合します。 ただし、 + 演算子は null 値の反映もサポートします。 null 値の反映とは、式のいずれかの構成要素が null の場合、式全体の結果も null 値となることを意味します。 前の例では、式の (", " + [State]) 部分について考えます。 +演算子を使用するため、内側かっこ内の式にコンマが含まれることは、State フィールドに値が存在する場合のみです。 State フィールドに値が存在しない場合、null 値の反映が有効になり、内側のかっこ内の式は null 値として評価されます。 これでコンマが非表示になります。

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

  1. 状態の値を含むレコードは、コンマ、スペース、および状態の略語で表示されます。

  2. City フィールドに Houston を含むレコードには状態が指定されていないため、結果はコンマ、スペース、または状態の省略形なしで表示されます。

先頭に戻る