使用運算式合併文字值

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

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

=[FirstName] & " " & [LastName]

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

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

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

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

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

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

  1. 在 [瀏覽窗格] 中,以滑鼠右鍵按一下您要變更的表單或報表,然後按一下捷徑功能表上的 [設計檢視]。

  2. 在 [設計] 索引標籤上,按一下 [控制項] 群組中的 [文字方塊]。

  3. 拖曳表單或報表上的指標以建立文字方塊。

  4. 以滑鼠右鍵按一下文字方塊,然後按一下捷徑功能表上的 [屬性]。

  5. 按一下屬性表中的 [資料] 索引標籤。

  6. 將 [控制項資料來源] 屬性方塊中的值變更為 =[FirstName] & " " & [LastName]

  7. 關閉屬性表並儲存您的變更。

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

名字不存在時的運算式結果範例

1.因為 FirstName 欄位中沒有資料,「Martinez」前面會加上零長度字串和空格。

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

若要消除不想要的逗號,您可以改用加號 (+) 運算子 (如下列範例運算式所示):

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

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

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

1.包含州值的記錄會顯示逗號、空格和州名縮寫。

2.由於未對 City 欄位中含有休士頓值的記錄指定州,因此運算式的結果不會顯示逗號、空格或州名縮寫。

頁面頂端

擴展您的技能
探索訓練
優先取得新功能
加入 Office 測試人員

這項資訊有幫助嗎?

感謝您的意見反應!

感謝您的意見反應! 我們將協助您與其中一位 Office 支援專員連絡以深入了解您的意見。

×