应用筛选器以查看 Access 数据库中的选择记录

筛选是一种仅查看想要在 Access 数据库中显示的数据的有用方法。 可以使用筛选器在窗体、报表、查询或数据表中显示特定记录,或者仅打印报表、表或查询中的特定记录。 通过应用筛选器,可以在不更改基础对象的设计的情况下限制视图中的数据。

本文内容

筛选器的有用性

由于应用筛选器后获取的视图仅包含具有所选值的记录,因此在清除筛选器之前,其余数据将保持隐藏状态。

注意: 数据表中的列以及绑定到表达式的窗体和报告中的控件不支持筛选。

有几种类型的筛选器,其中一些筛选器很容易应用和删除。 Access 包含一些内置于每个视图中的常用筛选器。 筛选器命令的可用性取决于字段的类型和值。

例如,若要查看其生日属于特定月份的人的记录,请单击"出生日期"列,在"排序 & 筛选"组的"开始"选项卡上,单击"日期筛选器",然后选择所需的日期周期。

针对日期字段的筛选

1. 可用的筛选器取决于所选数据类型的筛选器。

2. Period 筛选器中 所有日期将忽略日期值的"天"和"年"部分。

在此筛选视图中,只能看到 BirthDate 字段的月份部分设置为 April 的记录。

筛选条件为“April”的“BirthDate”列

1. 列标题中的筛选器图标和记录导航器栏指示当前视图已基于 BirthDate 列进行筛选。

2. 在数据表视图中,将鼠标悬停在列标题上方时,将看到当前的筛选条件。

注意:  将筛选器应用于已筛选的列时,会自动删除上一个筛选器。 尽管一次只有一个筛选器对一个字段有效,但您可以为视图中的每个字段指定不同的筛选器。

例如,若要查看生日在 4 月在英国的联系人的姓名,可以筛选 CountryRegion 字段和 BirthDate 字段上的"联系人"表。 在单个视图中筛选多个字段时,筛选器通过使用 AND 运算符进行组合,如下所示:

CountryRegion = UK AND month of BirthDate = April

还原为未筛选视图:删除筛选器。 删除筛选器会暂时将其从视图中删除,以便可以切换回原始的未筛选视图。

若要在筛选视图和未筛选视图之间进行切换:在"开始"选项卡&"排序和筛选"组中,单击"切换筛选器"。

若要从视图中永久删除筛选器,请清除筛选器。 若要了解如何清除筛选器,请参阅"清除 筛选器"部分

即使切换到对象的另一个视图,筛选器设置在关闭对象之前仍将有效。 换而言之,如果在数据表视图中筛选窗体,即使切换到窗体视图或布局视图,筛选设置仍将有效,并一直有效,直到关闭窗体。 如果在应用筛选器时保存对象,则下次打开该对象时,该对象将可用。 若要了解如何保存筛选器,请参阅本文 中的"保存 筛选器"部分。

返回页首

选择并应用筛选器类型

可以从多个现成的筛选器中选择一个应用数据类型。 这些筛选器在下列视图中以菜单命令的形式提供:数据表、窗体、报表和布局。 除了这些筛选器,您还可以通过完成名为"按窗体筛选" (窗体或数据表) 。

如果希望更灵活,并且希望编写表达式,可以使用"筛选文档"选项卡上的选项创建自己的筛选器。

从以下类型的筛选器中选择:

常用筛选器:筛选特定值或一系列值。

按选择进行筛选:通过筛选数据表视图筛选表中包含与行中所选值匹配的值的所有行。

按窗体筛选:筛选窗体或数据表中的多个字段,或者尝试查找特定记录。

高级筛选器:用于定义自定义筛选条件的筛选器类型。

注意: 如果在任何视图中都看不到筛选器命令,则窗体或数据库的设计器可能禁用了筛选。 请联系设计人员寻求进一步的帮助。

常用筛选器

除 OLE 对象字段和显示计算值的字段外,所有字段类型都提供通用筛选器。 可用的筛选器列表取决于所选字段的数据类型值。

右键单击要筛选的字段。 若要对多个列或控件进行筛选,必须单独选择和筛选每个列或控件,或使用高级筛选选项。 有关详细信息,请参阅本文中的" 按窗体筛选"和"高级筛选器"部分。

例如,若要查看可用于 BirthDate 字段的筛选器,请在"开始"选项卡上的"排序 &"组中,单击"筛选 "

公用日期筛选器

1. 若要筛选特定值,请使用复选框列表。 该列表显示当前在字段中显示的所有值。

2. 若要筛选一系列值,请单击其中一个筛选器,并指定所需的值。 例如,若要查看介于当前日期和年份结束之间的生日,请单击"介于",然后在"介于"对话框中指定相应的开始日期和结束日期。 若要查看特定日期的所有生日,请单击该日期,并显示该特定日期的所有生日。

必须注意,日期字段中的值会影响特定于类型的筛选器列表。 如果日期字段中的最近日期值在过去两年内,则会看到更长、更详细的筛选器列表。 如果字段中的日期没有少于两年,则会看到较短的筛选列表。

较长和较短的公用日期筛选列表

注意: 类型特定的筛选器不适用于"是/否"、OLE 对象和附件字段。 值列表不适用于备注字段或包含富文本的字段。

应用通用筛选器

  1. 在下列任何视图中打开表、查询、窗体或报表:数据表、窗体、报表或布局。

  2. 确保尚未筛选视图。 在记录选择器栏上,验证"未筛选"或灰 显的"无 筛选"图标是否存在。

    提示: 若要删除特定对象的所有筛选器,请在"开始"选项卡上的"排序&"组中,单击"高级",然后单击"清除所有 筛选器"。

  3. 单击列或控件中对应于要筛选的第一个字段的任意位置,在"开始"选项卡上的"排序&"组中,单击" 筛选"

若要应用常用筛选器:指向文本 (数字或日期) 筛选器,然后单击 要筛选 的筛选器。 "等于" "介于 "等筛选器会提示输入所需的值。

提示:  某些字符(如 *、% 和 ?)在筛选器文本框中指定时具有特殊含义。 例如,* 表示一个字符串,因此字符串 a* 将匹配以a开头的任何字符串,而不仅是文本字符串a*。 若要忽略字符的特殊含义,请用方括号 []括起来,如下所示:a[*]。 使用 ANSI-89 标准的数据库将 *、?、[、]、!, -, 和 #视为特殊字符。 使用 ANSI-92 标准的数据库将 %、[、]、^和 - 视为特殊字符。 可以将任一标准与 Access 一起使用,但不能将两个标准 (例如? a*) 特定表达式中。

若要基于字段值应用筛选器,请清除不想筛选的值旁边的复选框,然后单击"确定 "。

若要筛选长列表中的一个或多个值,请首先清除" (全选) "复选框,然后选择 需要的值。

若要筛选 null 值 (空值表示文本、数字和日期字段中缺少数据) :在复选框列表中,清除" (全选 ) "复选框,然后选择" (空白") 旁边的复选框。

按选择进行筛选

若要查看表中包含与行中的值匹配的值的所有行,可以通过选择特定值,然后单击"选择"命令快速筛选数据表视图。 下拉列表显示可用的筛选选项。 这些选项因所选值的数据类型而异。 访问选择筛选器选项的另一种方式是右键单击特定单元格。

例如,如果当前在 BirthDate 字段中选择了值 2/21/1967,请在"开始"选项卡上的"排序&筛选"组中单击"选择"以按选择命令显示筛选器,然后选择筛选选项。

基于选定内容的筛选列表

命令列表还取决于选择的值量。 例如,如果只选择值中的部分字符,则会看到不同的命令列表,具体取决于所选字段的哪个部分。

基于部分选定字段的筛选

1. 使用字段值的开头进行筛选...

2. ...字段值的中间...

3. ...或字段值的末尾。

注意: 部分选择的筛选不适用于多值字段。 " 选择"命令不适用于附件。

若要删除筛选器,请在"开始"选项卡上的"排序&筛选"组中,单击"切换筛选器",或单击"高级"并单击"清除所有筛选器"。

基于所选内容应用筛选器

  1. 在下列任何视图中打开表、查询、窗体或报表:数据表、窗体、报表或布局。

  2. 确保尚未筛选视图。 在记录选择器栏上,验证"未筛选"或灰 显的"无 筛选"图标是否存在。

  3. 移动到包含要用作筛选器一部分的值的记录,然后在数据表视图) 或窗体、报表或布局视图中的控件 (中的列 (内单击) 。

根据部分选择进行筛选;选择需要的字符,在"开始"选项卡上的"排序&"组中,单击"选择",然后单击要应用 筛选器。

按窗体筛选

如果要对窗体或数据表中的多个字段进行筛选,或者尝试查找特定记录,此筛选器非常有用。 Access 将创建类似于原始窗体或数据表的空白窗体或数据表,然后允许您完成所需的多个字段。 完成后,Access 将查找包含指定值的记录。

注意: 不能使用窗体筛选来指定多值字段的字段值,也不能为具有 Memo、Hyperlink、Yes/No 或 OLE Object 数据类型 的字段指定字段值,不过可以在记录集内指定其他字段的值。

例如,如果要查找联系人标题为"所有者"且此人位于西雅图Eugene的所有客户记录,请打开"客户"数据表或窗体,然后在"开始"选项卡上的"排序&筛选"组中单击"高级",然后单击"按窗体筛选"。

输入第一组值,然后单击数据表或窗体底部的 "Or" 选项卡,然后输入下一组值。 请注意,如果希望字段值作为独立于其他字段值的筛选器运行,则必须在"查找"选项卡和每个""选项卡上输入该值。 每个 "或 "选项卡表示一组备用筛选器值。

若要仅查看与输入匹配的记录,请执行以下操作:   在" 开始"选项卡上的"排序和& 组中,单击 "切换筛选器"。

通过填写表单应用筛选器

  1. 在数据表视图中打开表或查询,或在窗体视图中打开窗体。

  2. 确保尚未筛选视图。 在记录选择器栏上,验证"未筛选"或灰 显的"无 筛选"图标是否存在。

  3. 在"开始"选项卡上的"排序&"组中,单击"高级",然后在快捷菜单上单击"按 窗体筛选"。

  4. 根据你是在数据表视图还是窗体视图中工作,请执行下列操作之一:

    数据表视图: 单击要筛选的列的第一行,单击出现的箭头,然后选择一个值。 若要添加其他值,只需单击数据表底部的 "Or"选项卡并选择另一个值。

    窗体视图:单击控件中出现的箭头,然后选择要筛选的值。 若要添加其他值,请单击窗体底部的"或"选项卡, 然后选择另一个值。

    提示: 不能使用按窗体的筛选器指定多值字段的字段值,但可以在记录集内指定非多值字段的值。

    • 若要指定字段的可能值列表,请使用 or 运算符。 例如,在 City 字段中指定"俄勒冈州"或" 勒冈州"以筛选包含任一值的记录。

    • 若要根据控件的状态(如复选框或按钮)进行筛选,请单击该控件,以便它位于想要的状态中。 若要将控件返回到中性位置,以便它不会用作筛选记录的标准,请确保它不可用, (灰显) 。

    • 若要筛选包含 null (缺少) 、非 null、空 (空值或") 或非空值"的记录,请键入"Null"、"Is Not Null"、""或 Not ""。

  5. 例如,如果要指定两组备用条件,仅查看 CountryRegion 值为 USA 且生日在 4 月的联系人姓名,可以执行下列任一操作:

    • 若要检索满足多组条件任意一项的所有记录,请通过输入第一组条件来指定条件,单击"或"选项卡,然后输入下一组 条件。 请注意,如果希望字段值作为独立于其他字段值的筛选器运行,则必须在"查找"选项卡和每个"或"选项卡上输入 该值。 换言之," 查找"选项卡和每个 "Or"选项卡表示一组备用的筛选器值。

    • 另请注意,每次向"Or"选项卡添加字段条件时 ,Access 将创建另一个 "Or"选项卡。 这样,可以指定多个"或"条件。 筛选器返回任何记录,其中包含"查找"选项卡上指定的所有值,或第一个"或"选项卡上指定的所有值,或者第二个"或"选项卡上指定的所有值, 等等。

若要删除筛选器并显示所有记录,请 再次单击"切换筛选器"。

若要按窗体修改筛选器,请单击"高级",然后再次单击" 按窗体筛选"。 将显示当前筛选器条件集。

高级筛选器

有时,你可能想要应用高级筛选器类型的筛选器,并且可能必须自己编写筛选器条件。 例如,查找包含过去七天或过去六个月发生的日期的记录。

使用高级筛选器需要编写表达式。 表达式类似于 Excel 中的公式,以及设计查询时指定的条件。

使用高级筛选器的一个示例是,查找过去 7 天内生日的联系人的姓名。 应用高级筛选器后,可以进一步将结果限制为国家/地区为美国的国家/地区。

应用高级筛选器

  1. 在下列任何视图中打开表、查询、窗体或报表:数据表、窗体、报表或布局。

  2. 确保尚未筛选视图。 在记录导航器栏上,验证"无筛选器"是否显示为灰色 (不可用) 。 如果记录导航器栏不可见,请在"开始"选项卡上的"排序 & 筛选器"组中单击"高级",然后单击"清除所有筛选器" (如果"清除所有筛选器"显示为灰色,则没有有效筛选器) 。

  3. 在"开始"选项卡上的"排序&"组中,单击"高级",然后单击快捷菜单上的"高级筛选 /排序"。

  4. 将要筛选的字段添加到网格。

  5. 在每个 字段的" 条件"行中,指定条件。 条件作为一个集应用,并且只显示与"条件"行中所有条件匹配的记录。 若要为单个字段指定备用条件,请键入"条件"行中的第一个条件,在"Or"行中键入第二个条件,以此类比。

    提示: 

    • "Or"行中的整个条件集作为"条件"行中的条件集的替代应用。 必须为这两组条件应用的任何条件都必须在"条件"行和"Or"行中键入。 单击 "切换筛选 "以查看筛选的行。

    • 学习编写条件的一个好方法就是根据所选内容应用通用筛选器或筛选器,以生成接近要查找的结果。 然后,在将筛选器应用到视图后,显示" 筛选对象"选项卡

"筛选文档"选项卡上的特殊命令

"筛选文档"选项卡上提供了两 个特殊命令。 右键单击选项卡上设计网格上方的任意位置时,快捷菜单上提供了"从查询加载"和"另存为 查询"命令。

特殊筛选选项

" 从查询加载 "命令将所选查询的设计加载到网格中。 这样,可以使用查询条件作为筛选条件。

" 另存 为查询"命令允许将筛选器设置另存为新查询。

返回页首

删除或重新应用筛选器

若要切换到未筛选的数据视图,请删除筛选器,方法是单击记录导航栏上的"筛选"以还原到完整视图。

删除当前筛选器时,将从视图中的所有字段暂时删除筛选器。 例如,如果首先对 CountryRegion 和 BirthDate 字段应用筛选器,然后删除筛选器,则再次看到所有记录。

若要重新应用最新的筛选器,请单击记录导航栏上的"未筛选"。

返回页首

清除筛选器

不再需要筛选器时,清除筛选器。 清除筛选器会将其从视图中删除,并且不再可以通过单击状态栏上的"未筛选" 重新应用它。 可以从单个字段清除单个筛选器,或者从视图中的所有字段清除所有筛选器。

  • 若要从单个字段清除单个筛选器:右键单击筛选的列或控件,然后单击"从字段名称清除筛选器"。

  • 若要清除所有字段的所有筛选器:在"开始"选项卡上的"排序&筛选"组中,单击"高级",然后单击快捷菜单上的"清除所有筛选器 "。

返回页首

保存筛选器

如果再次使用筛选器,则保存筛选器可能很有用。 关闭表、查询、窗体或报表时生效的筛选设置会自动与对象一起保存,并且可用于重新应用。 但是,默认情况下,下次打开对象时不会自动应用筛选设置。

为确保在下次打开表、查询、窗体或报表时自动应用当前筛选器,请从对象的 属性表,将对象的 FilterOnLoad属性设置为 "是"。FilterOnLoad属性在下次打开对象时应用。 每当更改此设置时,必须关闭对象并重新打开它才能应用新设置。

注意: FilterOnLoad属性设置仅在对象加载时应用。 在设计视图中为对象设置此属性,然后切换到另一个视图不会导致应用设置。 必须关闭并重新打开对象 ,FilterOnLoad属性设置更改生效。

返回页首

需要更多帮助?

扩展你的 Office 技能
了解培训
抢先获得新功能
加入 Office 预览体验计划

此信息是否有帮助?

谢谢您的反馈!

谢谢你的反馈! 可能需要转接到 Office 支持专员。

×