篩選是一種有用的方法,可僅查看您要在 Access 資料庫中顯示的資料。 您可以使用篩選器來顯示表單、報表、查詢或資料工作表中的特定記錄,或只列印報表、資料表或查詢中的特定記錄。 透過套用篩選器,您可以限制檢視中的資料,而不需要變更基礎物件的設計。
本文內容
篩選器的用途
由於套用篩選器之後取得的檢視只會包含具有您選取值的記錄,因此其餘資料會保持隱藏狀態,直到您清除篩選器為止。
附註: 繫結至運算式的表單和報表中資料表和控制項中的資料行不支援篩選。
過濾器有多種類型,其中一些易於應用和刪除。 Access 包含一些內建於每個檢視中的常見篩選器。 篩選指令的可用性取決於欄位的類型和值。
例如,若要檢視生日在特定月份的人員記錄,請按一下 [出生日期] 欄,在 [排序 & 篩選器] 群組的 [首頁] 索引標籤上,按一下 [篩選器],然後按一下對話方塊中的 [日期篩選器],然後選取所需的日期期間。
1. 您可以使用的篩選器取決於所選欄中的資料類型。
2. 「期間中的所有日期」 篩選器會忽略日期值的日期和年份部分。
在此篩選的檢視中,您只會看到 BirthDate 欄位的月份部分設定為 April 的記錄。
1. 欄標題與記錄導覽器列中的篩選器圖示,表示目前檢視已在「出生日期」欄上進行篩選。
2.在數據表視圖中,當您將鼠標懸停在列標題上時,您將看到當前的過濾條件。
附註: 當您將篩選器套用至已篩選的資料行時,會自動移除先前的篩選器。 雖然一次只能對欄位啟用單一篩選器,但您可以為檢視中的每個欄位指定不同的篩選器。
例如,若要查看生日在 4 月的英國連絡人名稱,您可以在 CountryRegion 欄位和 BirthDate 欄位上篩選 [連絡人] 資料表。 當您在單一檢視中篩選多個欄位時,會使用 AND 運算子來組合篩選器,如下所示:
CountryRegion = 英國和出生月份Date = 四月
若要還原為未篩選的檢視:移除篩選器。 移除篩選器會暫時將其從檢視中移除,以便您可以切換回原始的未篩選檢視。
若要在篩選和未篩選的檢視之間切換:在 首頁 索引標籤的 排序 & 篩選 群組中,按一下 切換篩選器。
若要從檢視中永久移除篩選器:清除篩選器。 若要瞭解如何清除篩選器,請參閱 清除篩選器一節。
篩選器設定將一直有效,直到您關閉物件,即使您切換到物件的其他檢視也是如此。 換句話說,如果您在 [資料工作表] 檢視中篩選表單,即使您切換至 [表單檢視] 或 [版面配置檢視] ,篩選設定仍會有效,而且會一直有效,直到您關閉表單為止。 如果您在套用篩選器時儲存物件,則下次開啟物件時即可使用。 若要瞭解如何儲存篩選器,請參閱本文中的 儲存篩選器一 節。
選取並套用篩選器類型
您可以從資料類型的數個現成篩選器中選取。 這些篩選器可在下列檢視中做為功能表命令:資料表、表單、報表和版面配置。 除了這些篩選之外,您也可以完成名為 [依表單) 篩選] 的表單 (來篩選表單或資料工作表。
如果您想要更大的彈性,而且您能輕鬆撰寫運算式,您可以使用 [篩選文件] 索引標籤上的選項來建立自己的篩選器。
從下列類型的篩選器中選取:
常用篩選器:篩選特定值或值範圍。
依選取範圍篩選:若要篩選資料表中包含符合資料工作表中所選值之值的所有資料列,方法是篩選資料工作表檢視。
依表單篩選:篩選表單或資料表中的數個欄位,或如果您嘗試尋找特定記錄。
進階篩選器:若要篩選您定義自訂篩選條件的篩選類型。
附註: 如果您在任何檢視中都看不到篩選命令,則表單或資料庫的設計者可能已停用篩選。 請聯絡設計師以獲得進一步協助。
常用篩選器
除了 OLE 物件欄位和顯示計算值的欄位之外,所有欄位類型都提供通用篩選器。 可用的篩選清單取決於所選欄位的資料類型和值。
以滑鼠右鍵按一下您要篩選的欄位。 若要篩選多個欄或控制項,您必須分別選取並篩選每個欄或控制項,或使用進階篩選選項。 如需詳細資訊,請參閱本文中的 依表單篩選 和 進階篩選器 區段。
例如,若要查看 [出生日期] 欄位可用的篩選條件,請在 [首頁] 索引標籤的 [排序 & 篩選器] 群組中,按一下 [篩選器]。
1. 欲篩選特定值,請使用核取方塊清單。 此清單會顯示目前顯示在欄位中的所有值。
2. 欲篩選值範圍,請按一下其中一個篩選器,然後指定所需的值。 例如,若要查看介於目前日期和年終之間的生日,請按一下 [之間],然後在 [之間 ] 對話方塊中指定適當的開始和結束日期。 若要查看特定日期的所有生日,請按一下該日期,並顯示該特定日期的所有生日。
請務必注意,日期欄位中的值會影響類型特定篩選器的清單。 如果日期欄位中的最新日期值在過去兩年內,您會看到更長、更詳細的篩選清單。 如果欄位中的日期都少於兩年,您會看到較短的篩選器清單。
附註: 類型特定的篩選器不適用於是/否、OLE 物件和附件欄位。 值清單不適用於「長文字」欄位,或包含RTF文字的欄位。
套用通用篩選器
-
在下列任何檢視中開啟資料表、查詢、表單或報表:資料表、表單、報表或版面配置。
-
請確定檢視尚未篩選。 在記錄選取器列上,確認 [ 未篩選] 或 [ 無篩選 ] 圖示呈灰色。
提示: 若要移除特定物件的所有篩選器,請在 [ 常用 ] 索引標籤的 [排序 & 篩選器 ] 群組中,按一下 [進階],然後按一下 [清除所有篩選器]。
-
按一下資料行或控制項中對應至您要篩選之第一個欄位的任何位置,然後在 [常用] 索引標籤的 [排序 & 篩選] 群組中,按一下 [篩選]。
若要套用一般篩選器:指向 [文字 (] 或 [ 數字 ] 或 [ 日期 ]) [篩選器],然後按一下您要的篩選器。 「 等於 」和 「之間 」等篩選器會提示您輸入必要的值。
提示: 某些字元 (例如 *、% 和 ?) 在篩選文字方塊中指定時具有特殊意義。 例如,* 代表字串,因此字串 a* 將比對任何以 a 開頭的字串,而不只是文字字串 a*。 若要忽略字元的特殊意義,請將其括在方括號 [] 中,如下所示:a[*]。 使用 ANSI-89 標準的資料庫會將 *、?、[、[]、, -, 和 # 視為特殊字元。 使用 ANSI-92 標準的資料庫會將 %、_、[、[]、^ 及 - 視為特殊字元。 您可以將任一標準與 Access一起使用,但不能混合使用這兩個標準 (例如, ?a*) 在特定表達式中。
若要根據欄位值套用篩選器:清除您不想篩選的值旁邊的核取方塊 ,然後按一下確定。
若要篩選長清單中的一個或幾個值,請先清除 [ (選取所有) ] 核取方塊,然後選取您想要的值。
若要篩選 Null 值 (Null 值表示文字、數字和日期欄位中沒有資料) :在核取方塊清單中,清除 [ (選取所有) ] 核取方塊,然後選取 [ 空白) (] 旁的核取方塊。
依選取範圍篩選
若要查看資料表中包含符合資料列中值之值的所有資料列,您可以選取特定值,然後按一下 [選取] 命令,以快速篩選資料工作表檢視。 下拉式清單會顯示可用的篩選選項。 這些選項會有所不同,具體取決於所選值的資料類型。 存取選取篩選器選項的另一種方法是右鍵按一下特定儲存格。
例如,如果目前在 [出生日期] 欄位中選取值 2/21/1967,則在 [ 首頁 ] 索引標籤的 [排序 & 篩選器 ] 群組中,按一下 [選取範圍] 以顯示依選取命令篩選,然後選取您的篩選選項。
命令清單也取決於選取的值量。 例如,如果您只選取值中的部分字元,您會看到不同的指令清單,視您選取的欄位部分而定。
1. 使用欄位值的開頭進行篩選...
2. ...欄位值的中間...
3. ...或欄位值的結尾。
附註: 部分選取範圍的篩選不適用於多值欄位。 「 選取」 指令不適用於附件。
若要移除篩選器,請在 [ 常用 ] 索引標籤的 [排序 & 篩選器 ] 群組中,按一下 [切換篩選器],或按一下 [進階 ],然後按一下 [清除所有篩選器]。
根據選取範圍套用篩選器
-
在下列任何檢視中開啟資料表、查詢、表單或報表:資料表、表單、報表或版面配置。
-
請確定檢視尚未篩選。 在記錄選取器列上,確認 [ 未篩選] 或 [ 無篩選 ] 圖示呈灰色。
-
移至包含您要用作篩選條件一部分之值的記錄,然後在 [表單]、[報表] 或 [版面配置] 檢視) 中按一下 [資料工作表]) 檢視 (或控制項 (內的資料行內按一下。
根據部分選擇進行過濾;選取您要的字元,在 [ 首頁 ] 索引標籤的 [排序 & 篩選器 ] 群組中,按一下 [ 選取範圍],然後按一下您要套用的篩選器。
依表單篩選
當您想要篩選表單或資料工作表中的數個欄位,或嘗試尋找特定記錄時,此篩選器非常有用。 Access 會建立與原始表單或資料工作表類似的空白表單或資料工作表,然後允許您完成任意數量的欄位。 當您完成時, Access 會尋找包含指定值的記錄。
附註: 您無法使用依表單篩選來指定多值欄位的欄位值,也無法指定具有 [長文字]、[超連結]、[是/否] 或 [OLE 物件] 資料類型的欄位值,不過您可以指定記錄集中其他欄位的值。
例如,如果您想要尋找連絡人職稱為 [擁有者] 的所有客戶記錄,且該人員位於波特蘭或尤金,請開啟 [客戶] 資料工作表或表單,然後在 [首頁] 索引標籤的 [排序 & 篩選器] 群組中,按一下 [進階],然後按一下 [依表單篩選]。
輸入第一組值,然後按一下資料工作表或表單底部的 [ 或 ] 索引標籤,然後輸入下一組值。 請注意,如果您希望欄位值獨立於其他欄位值作為篩選器運作,則必須在 [尋找 ] 索引標籤和每個 或 索引標籤上輸入該值。 每個 Or 索引標籤代表一組替代的篩選值。
若要只查看符合您輸入的記錄: 在 [首頁 ] 索引標籤的 [排序 & 篩選器 ] 群組中,按一下 [切換篩選器]。
填寫表單套用篩選器
-
在資料工作表檢視中開啟資料表或查詢,或在表單檢視中開啟表單。
-
請確定檢視尚未篩選。 在記錄選取器列上,確認 [ 未篩選] 或 [ 無篩選 ] 圖示呈灰色。
-
在 [首頁] 索引標籤的 [排序 & 篩選] 群組中,按一下 [進階],然後按一下捷徑功能表上的 [依表單篩選]。
-
視您是在 [資料工作表] 檢視或 [表單] 檢視中工作,執行下列其中一項:
數據表視圖: 按一下您要篩選的資料行中的第一列,按一下出現的箭號,然後選取值。 若要新增其他值,只要按一下資料表底部的 [或 ] 索引標籤,然後選取另一個值。
表單檢視:按一下控制項中顯示的箭頭,然後選取要篩選的值。 若要新增其他值,請按一下表單底部的 或 索引標籤,然後選取另一個值。
提示: 您無法使用篩選依據表單來指定多值欄位的欄位值,但您可以指定記錄集中非多值欄位的值。
-
若要指定欄位的可能值清單,請使用 or 運算子。 例如,在「城市」欄位中指定 「波特蘭」或「奧勒岡」 ,以篩選包含任一值的記錄。
-
若要根據控制項的狀態進行篩選,例如核取方塊或按鈕,請按一下控制項,使其處於您想要的狀態。 若要將控制項返回中立位置,使其不會用作篩選記錄的準則,請確定它無法使用 (顯示為灰色) 。
-
若要篩選具有 Null (遺漏) 、非 Null、空白 (空或 “”) 或非空白值的記錄,請在欄位中輸入 Is Null、 Is Not Null、 “” 或 Not“” 。
-
-
例如,如果您想要指定兩組替代準則,例如,只查看 CountryRegion 值為 USA 且生日在 4 月的連絡人名稱,您可以執行下列任一項作業:
-
若要擷取符合多組準則中任何一組條件的所有記錄,請輸入第一組準則,按一下 [或 ] 索引標籤,然後輸入下一組準則來指定準則。 請注意,如果您希望欄位值獨立於其他欄位值作為篩選器運作,則必須在 [尋找 ] 索引標籤和每個 或 索引標籤上輸入該值。 換句話說, 「尋找」 標籤和每個 「或」 標籤代表一組替代的篩選值。
-
另請注意,每次將欄位準則新增至 「或」 標籤時, Access 都會建立另一個 「或」 標籤。 這可讓您指定數個「或」條件。 篩選會傳回任何記錄,其中包含 [尋找] 索引標籤上指定的所有值,或第一個 [或 ] 索引標籤上指定的所有值,或第二個 [或 ] 索引標籤上指定的所有值,依此類推。
-
若要移除篩選器並顯示所有記錄,請再次按一下「切換篩選器」。
若要依表單修改篩選器,請按一下 「進階」,然後再次按一下 「依表單篩選 」。 隨即顯示目前的篩選條件集。
進階篩選
有時候,您可能想要套用進階篩選類型的篩選器,而且您可能必須自行撰寫篩選條件。 例如,尋找包含過去 7 天或過去 6 個月內發生的日期的記錄。
使用進階篩選器需要撰寫運算式。 表示式類似於 Excel中的公式,以及您在設計查詢時指定的準則。
您可以使用進階篩選器的一個範例是,尋找過去 7 天內生日發生的聯絡人的姓名。 套用進階篩選器之後,您可以進一步將結果限制為國家/地區為美國的篩選條件。
套用進階篩選器
-
在下列任何檢視中開啟資料表、查詢、表單或報表:資料表、表單、報表或版面配置。
-
請確定檢視尚未篩選。 在記錄導覽器列上,確認 無篩選器 顯示 為灰色 () 無法使用。 如果記錄導覽器列不可見,請按一下 [首頁] 索引標籤上 [排序 & 篩選器] 群組中的 [進階],然後按一下 [清除所有篩選器] (如果 [清除所有篩選器] 顯示為灰色,則表示沒有有效的篩選器) 。
-
在 [ 首頁 ] 索引標籤的 [排序 & 篩選器 ] 群組中,按一下 [ 進階 ],然後按一下捷徑功能表上的 [進階篩選器/排序 ]。
-
將您要篩選的欄位新增至方格。
-
在每個欄位的 [準則 ] 列中,指定準則。 準則會以集合的形式套用,且只會顯示符合 「準則」 列中所有準則的記錄。 若要指定單一欄位的替代準則,請在 [準則 ] 列中鍵入第一個準則,並在 [ 或 ] 列中鍵入第二個準則,依此類推。
提示:
-
「 或 」列中的整組準則會套用為「 準則」 列中準則集的替代項。 您要套用至兩組準則的任何準則都必須在 [準則 ] 列和 [或 ] 列中輸入。 按一下 切換篩選器 以查看篩選的資料列。
-
學習編寫條件的一個好方法是應用通用過濾器或基於選擇的過濾器,以產生接近您要查找的結果。 然後,將篩選器套用至檢視,顯示 篩選 器物件 索引標籤
-
篩選文件索引標籤上的特殊命令
您可以在 「篩選文件」 標籤上使用兩個特殊指令。 當您在標籤上設計格點上方的任何位置按一下滑鼠右鍵時,捷徑功能表上會出現「 從查詢載入 」和 「另存為查詢 」命令。
「 從查詢載入」 指令會將所選查詢的設計載入到網格中。 這可讓您使用查詢準則作為篩選準則。
「 另存為查詢」 指令可讓您將篩選器設定儲存為新查詢。
移除或重新套用篩選
若要切換至未篩選的資料檢視,請按一下記錄導覽器列上的 已篩選, 以還原為完整檢視,以移除篩選器。
當您移除目前的篩選器時,會暫時從檢視中的所有欄位中移除篩選器。 例如,如果您先在 CountryRegion 和 BirthDate 欄位上套用篩選條件,然後移除篩選條件,您會再次看到所有記錄。
若要重新套用最新的篩選器,請按一下記錄導覽器列上的 [未篩選]。
清除篩選
當您不再需要過濾器時,請清除過濾器。 清除篩選器會將其從檢視中刪除,而且您無法再按一下狀態列上的「 未篩選」 來重新套用它。 您可以從單一欄位中清除單一篩選器,或清除檢視中所有欄位中的所有篩選器。
-
若要從單一欄位清除單一篩選器:以滑鼠右鍵按一下篩選的資料行或控制項,然後按一下 [從欄位名稱清除篩選器]。
-
若要清除所有欄位中的所有篩選器:在 [ 常用 ] 索引標籤的 [排序 & 篩選器 ] 群組中,按一下 [進階],然後按一下捷徑功能表上的 [清除所有篩選器 ]。
儲存篩選器
如果您要再次使用過濾器,保存過濾器可能會很有用。 當您關閉表格、查詢、表單或報表時生效的篩選器設定會自動與物件一起儲存,並可供重新套用。 不過,依預設,當您下次開啟物件時,不會自動為您套用篩選器設定。
若要確保在您下次開啟資料表、查詢、表單或報表時自動套用目前的篩選條件,請從物件的內容表中,將物件的 FilterOnLoad 屬性設定為 [是]。 FilterOnLoad 屬性會在您下次開啟物件時套用。 每當您變更此設定時,都必須關閉物件並重新開啟它,才能套用新設定。
附註: FilterOnLoad 屬性設定只會在物件載入時套用。 在「設計」檢視中為物件設定此屬性,然後切換至另一個檢視,不會導致套用設定。 您必須關閉並重新開啟物件, FilterOnLoad 屬性設定的變更才會生效。