Sign in with Microsoft
Sign in or create an account.
Hello,
Select a different account.
You have multiple accounts
Choose the account you want to sign in with.

本文說明如何在 Access 中建立條件式 (也稱為布爾值) 表達式。 條件式表達式會評估為 True 或 False,然後會傳回符合您指定條件的結果。 如果您在條件表示式中使用函數,您也可以為符合表達式條件的值指定動作。 例如,您可以建立一個運算式,以 10% 或以下的利差來尋找所有銷售量,然後指定這些數位以紅色類型顯示,或以郵件取代值。

本文內容

了解條件式表達式

條件式表達式是一種表達式類型,它會測試您的數據以查看其是否符合條件,然後根據結果採取動作。 例如,表達式可以尋找比指定開始日期晚的日期值,然後在您嘗試輸入早於已定義開始日期的日期時顯示錯誤訊息。

條件式表達式採用相同的表單,並使用與其他運算式相同的基本語法,而且您可以使用與其他運算式相同的方式來使用這些語法:

  • 若是數據表欄位,您可以將表示式新增至欄位的 [驗證規則] 屬性。 用戶必須接著在符合表達式條件的欄位中輸入值。 例如,如果您在 [日期/時間] 字段中使用像是 >=#1/1/2000# 等運算式,用戶必須輸入等於或晚於 2000 年 1 月 1 日的值。

  • 對於表單上的控制項,您可以將表達式新增至控件的 [控件來源 ] 或 [ 驗證規則] 屬性。 一般說來,您會將條件式運算式新增至 驗證規則 屬性,然後將計算值的表達式新增至 Control Source 屬性。 例如,在控件的 [驗證規則] 屬性中使用 >=#1/1/2000# 可防止使用者輸入無效的日期。 在 [控件來源] 屬性中使用 [日期 () 等表達式,會將目前的日期顯示為預設值。

  • 針對查詢,您可以將條件式運算式新增至 [欄位 ] 資料列中的空白儲存格,或者您也可以在查詢的 [ 準則 ] 資料列中使用運算式。 當您在 [ 字段 ] 列中使用表達式時,結果會在查詢結果中顯示為數據行。 當您使用表達式做為現有欄位的準則時,表達式會做為篩選,並限制查詢傳回的記錄。

    例如,您可以在查詢的 [字段 ] 列中使用此表達式: =IIf ([訂單日期]<=#04/01/2018#,[訂單日期],“4 月 1 日之後輸入的訂單 ) 。 表達式會指定日期準則 (<=#04/01/2018#) 。 查詢執行時,會顯示符合準則的所有日期值,而任何不符合準則的日期值都會取代為「4 月 1 日之後輸入的訂單」訊息。 將 表達式新增至查詢一 節中的步驟說明如何在查詢中使用此表達式。

    相反地,在查詢的 [ 準則 ] 字段中使用此表達式,只會傳回符合準則的記錄: Between #04/01/2018# AND #05/15/2018#

如需建立及使用表達式的詳細資訊,請參閱 瞭解如何建立表達式一文。

頁面頂端

建立條件式表達式

本節中的步驟說明如何將條件式表達式新增至數據表、表單或報表上的控件,以及查詢。 每組步驟都使用稍微不同的表達式來測試 [日期/時間] 字段中的值,並根據日期值是否符合指定的條件來採取行動。

將表達式新增至數據表欄位

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

  2. 在 [ 數據類型] 欄中,按兩下 [日期/時間] 欄位。

  3. 在 [ 欄位屬性] 底下的 [ 一般 ] 索引標籤上,按兩下 [ 驗證規則 ] 屬性方塊,然後輸入下列運算式:

    >=#01/01/2000#

    附註: 您不需要使用美式日期格式。 您可以針對您的國家/地區或地區使用日期格式。 不過,您必須用井字型大小 (#) 來包圍日期值,如圖所示。

  4. 點選單擊 [ 驗證文字 ] 旁的欄,然後輸入此文字字串:

    日期必須大於 2000 年 1 月 1 日。

    同樣地,您可以使用本機日期格式。

  5. 儲存變更,然後切換到 [數據工作表檢視]。 若要這麼做,請以滑鼠右鍵單擊表格的檔索引標籤,然後按兩下快捷方式選單上的 [ 資料工作表檢視 ]。

  6. 在 2000 年 1 月 1 日之前的 [日期/時間] 字段中輸入日期值。 Access 會顯示 [ 驗證規則 ] 屬性方塊中指定的訊息,而且您無法離開欄位,除非您輸入表示式評估為 True 的值。

將表達式新增至控制件

  1. 在 [導航窗格] 中,以滑鼠右鍵按下要變更的表單,然後按下快捷方式功能表上的 [ 設計視圖 ]。

  2. 以滑鼠右鍵按兩下系結至 [日期/時間] 欄位的控件,然後按下快捷方式功能表上的 [ 內容 ]。

    控件的屬性表隨即出現。

  3. 在 [ 數據] 索 引標籤或 [ 全部] 索引 標籤上,按兩下 [驗證規則 ] 旁的欄位,然後輸入下列運算式:

    >=#01/01/2000#

    附註: 您不需要使用美式日期格式。 您可以針對您的國家/地區或地區使用日期格式。 不過,您必須用井字型大小 (#) 來包圍日期值,如圖所示。

  4. 點選單擊 [ 驗證文字 ] 旁的欄,然後輸入此文字字串:

    日期必須大於 2000 年 1 月 1 日。

  5. 儲存變更並切換回 [表單檢視]。 若要這麼做,請以滑鼠右鍵單擊窗體的檔索引標籤,然後按兩下快捷方式選單上的 [表 單檢視 ]。

新增表達式至查詢

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

  2. 點選此線[ 字段 ] 列中的空白儲存格,然後輸入下列表示式:

    =IIf ([Field_Name]<=#04/01/2018# , [Field_Name] , “Date later than 1 april, 2018”)

    當您輸入表示式時,請確定將這兩個Field_Name實例取代為 [日期/時間] 欄位的名稱。 此外,如果您的數據表不包含 2018 年 4 月 1 日之前的日期,請變更運算式中的日期以處理您的數據。

  3. 儲存變更,然後按兩下 [ 執行] 以檢視結果。

表達式的運作方式如下:第一個自變數 (=IIf ([Field_Name]<=#04/01/2018#) 指定數據必須符合的條件, 日期必須是 2018 年 4 月 1 日或早於 2018 年 4 月 1 日。 第二個自變數 ([Field_Name]) 指定當條件為 True 時,使用者會看到哪些內容 — 字段中的日期。 第三個自變數 (「2018 年 4 月 1 日之後的日期」) ) 指定使用者在數據不符合條件時看到的訊息。

繼續進行時,請記住,並非所有條件式運算式都會使用 If 函數。 此外,請記住, IIf 函數是表達式中需要自變數的部分,而不是表達式本身。

如需表達式及其使用方式的詳細資訊,請參閱 瞭解如何建立表達式一文。

頁面頂端

條件式表達式的範例

下表中的表達式顯示一些計算 True 和 False 值的方法。 這些表達式會使用 If 函數 (立即如果) 判斷條件為True 或 False,然後在條件為 True 時傳回一個值,如果條件為 False 則傳回另一個值。

如需詳細資訊,請參閱 IIf 函 數一文。

運算式

描述

=IIf([Confirmed] = "是", "訂單已確認", "訂單未確認")

如果 [確認] 欄位的值為 [是],則顯示「訂單已確認」訊息;否則,它會顯示「訂單未確認」訊息。

=IIf (IsNull ([Country/region]) 」 “, [Country/region])

如果 Country/region 字段的值為 Null,則顯示空白字串;否則,它會顯示 [國家/地區] 字段的值。

=IIf (IsNull ([Region]) ,[City]&“ ”& [PostalCode], [City]&“ ”&[Region]&“ ” &[PostalCode])

如果 Region 域值為 Null,則顯示 City 和 PostalCode 欄位的值;否則,它會顯示 [城市]、[地區] 和 [郵遞區號] 字段的值。

=IIf (IsNull ([RequiredDate] - [ShippedDate]) , “Check for a missing date”, [RequiredDate] - [ShippedDate])

如果 RequiredDate 字段減去 ShippedDate 字段值的結果為 Null,則顯示「檢查遺失日期」訊息;否則,它會顯示 RequiredDate 和 ShippedDate 字段值之間的差異。

頁面頂端

Need more help?

Want more options?

探索訂閱權益、瀏覽訓練課程、瞭解如何保護您的裝置等等。

社群可協助您詢問並回答問題、提供意見反應,以及聆聽來自具有豐富知識的專家意見。

Was this information helpful?

How satisfied are you with the translation quality?
What affected your experience?
By pressing submit, your feedback will be used to improve Microsoft products and services. Your IT admin will be able to collect this data. Privacy Statement.

Thank you for your feedback!

×