使用運算式組合文字值

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

當你想在 Access 中合併兩個或多個文字欄位的值時,你會建立一個使用&符號 (&) 運算子的表達式。 例如,假設您有一份稱為「員工」的表單。 您在個別的欄位中輸入每個員工的名字和姓氏,但您想要在表單首中顯示員工的全名。

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

=[名字] & “ ” & [姓氏]

此表達式使用 & 運算子將 FirstName 與 LastName 欄位中的值合併。 此運算式也使用一對以空格字元隔開的雙引號 ("),在名字與姓氏之間插入一個空格。 當您想要在兩個欄位之間插入某個項目 (例如空格、標點符號字元或常值文字),您必須以雙引號括住該額外的值。

另一個範例是,您可以使用下列運算式顯示姓氏和名字,並以逗號和空格隔開:

=[姓氏] & “, ” & [名字]

在此情況下,此運算式在 LastName 和 FirstName 欄位之間插入以雙引號括住的逗號和空格。

下列程序中的步驟假設您有一份表單,且該表單是以包含名為 FirstName 和 LastName 的欄位的資料表為基礎。 若非如此,您可以在步驟 6 中更改運算式以符合您自己的資料。

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

  1. 在 [瀏覽窗格] 中,以滑鼠右鍵按一下您要變更的表單或報表,然後按一下捷徑功能表上的 [設計檢視]
  2. 「表單設計 」或 「報表設計」 分頁,控制 群組中,點選 「文字框」。
  3. 拖曳表單或報表上的指標以建立文字方塊。
  4. 以滑鼠右鍵按一下文字方塊,然後按一下捷徑功能表上的 [屬性]
  5. 按一下屬性表中的 [資料] 索引標籤。
  6. 控制來源屬性框中的值改為 =[FirstName] & “” & [LastName]。
  7. 關閉屬性表並儲存您的變更。

有時您要合併的其中一個欄位可能未包含值。 缺少資料即稱為 Null 值。 當你對沒有值的欄位使用 & 運算子時,Access 會回傳該欄位的零長度字串。 例如,如果員工的記錄只有姓氏,上述範例中的運算式會針對 FirstName 欄位傳回零長度字串、空格字元,以及 LastName 欄位中的值。

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

1. 由於 FirstName 欄位中沒有資料,「Martinez」前方會加上一個零長度的字串和一個空格。

當您將多個欄位的值合併為一個新字串,只有在某個特定欄位中存在資料時,您才可能會想要在新字串中包含某個值 (例如逗號)。 要有條件地包含一個值,你用 + 運算子取代 & 運算子來合併欄位。 例如,假設您有一份稱為「客戶」的資料表,而該資料表包含稱為 City、State 和 PostalCode 的欄位。 您想要合併報表的這些欄位中的值,但某些記錄在 [縣/市] 欄位中可能沒有值。 在這種情況下,如果你用 & 運算子合併欄位,郵遞區號值前會出現不必要的逗號。

為了消除不想要的逗號,你可以改用加號 (+) 運算 子,如下範例表達式所示:

= ([城市] & (“, ” + [州]) &“ ” & [郵遞區號])

+ 操作符以與 & 操作符相同的方式組合文字。 然而, + 運算子也支援所謂的 Null 傳播。 Null 傳播確保運算式中如有任何元件為 Null,則整個運算式的結果也為 Null。 在上述範例中,請考慮運算式的 (", " + [State]) 部分。 由於使用 了 + 運算子,內括號內的運算式只有在狀態欄位中存在某值時才包含逗號。 如果 [State] 欄位中沒有值存在,Null 傳播會生效,而且內括號中的運算式會評估為 Null 值,因而「隱藏」逗號。

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

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

2. 該記錄的 City 欄位中未指定 Houston 值的狀態,因此表達式的結果會顯示不包含逗號、空格或狀態縮寫。

頁面頂端