使用運算式組合文字值

套用到
Microsoft 365 Access Access 2024 Access 2021 Access 2019 Access 2016

若要在 Access 中組合兩個或多個文字欄位的值,請建立一個使用 該運算子的 & 表達式。 例如,假設你有一個名為 Employees的形式。 您在個別的欄位中輸入每個員工的名字和姓氏,但您想要在表單首中顯示員工的全名。

若要顯示全名,您可以使用下列運算式:

=[FirstName] & " " & [LastName]

該表達式使用運算&子將 和 LastName 欄位中的FirstName值合併。 它還使用一對雙引號 (") 中間有空格,插入名字與姓氏之間的空格。 當你想在兩個欄位之間插入某些東西,例如空格、標點符號或文字時,請用引號包住該值。

你也可以使用以下表達式來顯示姓氏和名字,中間用逗號和空格分隔:

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

此時,表達式會在 和 FirstName 欄位之間LastName插入逗號和引號中的空格。

以下步驟假設你有一個基於包含欄位 FirstNameLastName的表型。 若非如此,您可以在步驟 6 中更改運算式以符合您自己的資料。

新增含有全名運算式的文字方塊

  1. 導航窗格中,右鍵點擊你想更改的表單或報表,然後在捷徑選單中選擇 「設計檢視 」。
  2. 表單設計報表設計 標籤中, 控制項群組 中選擇 文字框
  3. 拖曳表單或報表上的指標以建立文字方塊。
  4. 右鍵點擊文字框,然後在快捷鍵選單中選擇 屬性
  5. 在屬性表中,選擇 「資料 」標籤。
  6. 控制來源 屬性框中的值改為 =[FirstName] & " " & [LastName]
  7. 關閉屬性表並儲存您的變更。

有時候,你想合併的某個欄位沒有包含某個值。 這種資料缺失稱為 空值。 當你對沒有值的欄位使用運算 & 子時,Access 會回傳該欄位的零長度字串。 例如,若員工紀錄只有姓氏,前例中的表達式會回傳欄位的零長度字串 FirstName 、一個空格及欄位中的 LastName 值。

[名字] 欄位未包含資料時運算式的結果

  1. 由於欄位中沒有資料 FirstNameMartinez 前方有一個零長度的字串和一個空格。

當你將多個欄位的值合併成新字串時,可能只在特定欄位中有資料時才加入像逗號這樣的值。 要做到這點,請使用 + 運算子而非 & 運算子來合併欄位。 例如,假設你有一個名為 Customer 、 、 的欄位,該表包含了 CityStatePostal Code。 你想把這些欄位的值合併成報表,但有些紀錄欄位裡可能沒有值 State 。 在那種情況下,如果你用 carrier, & 郵遞區號前面會出現一個不需要的逗號。

要移除不想要的逗號,請使用 + 運算子,如下表達式所示:

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

+運算子以與運算&子相同的方式組合文字。 然而,該 + 運算元同時也支援 零傳播。 零傳播意指若表達式中任一成分為空,整個表達式的結果也為空。 在前述範例中,考慮表達式的部分 (", " + [State]) 。 由於 + 使用了運算子,內括號內的表達式只有在欄位中存在 State 某值時才包含逗號。 若欄位中不存在 State 某個值,則會進行空傳播,內括號內的表達式會被計算為空值。 這樣可以遮住逗號。

未指定省/市時的運算式結果範例

  1. 包含狀態值的紀錄會以逗號、空格和狀態縮寫顯示。

  2. 欄位中未指定 的HoustonCity紀錄狀態,因此結果顯示時不包含逗號、空格或狀態縮寫。

回到頂端