跳至主要内容

如何使用 Excel 高级筛选 - 带示例的完整指南

Author: Siluvia Last Modified: 2025-07-31

Excel 的高级筛选是一个强大的工具,提供了超越标准筛选功能的灵活性,使用户能够高效地执行复杂的筛选任务。本指南深入探讨了 Excel 的高级筛选功能,将其与常规筛选进行比较,提供实际示例,并提供最佳使用的注意事项。这将使您能够自信地掌握高级筛选的使用。

A screenshot showing the Excel Advanced Filter interface and sample dataset


高级筛选与常规筛选

Excel 的常规筛选与高级筛选的主要区别在于其复杂性和功能性。常规筛选提供简单的、基于单列条件的筛选,而高级筛选则超越了这些限制:

  • 允许在多个列中使用多个条件。
  • 提供从数据集中提取唯一值的能力。
  • 支持使用通配符进行更灵活的部分匹配。
  • 允许将筛选后的数据提取到单独的位置。

使用高级筛选的示例

本节将提供不同的实际示例,向您展示如何在 Excel 中使用高级筛选以实现不同的筛选效果。


提取唯一列表

Excel 的高级筛选可以快速从数据集中生成唯一值列表,这在使用常规筛选时可能会很繁琐。如果您有一个包含重复行的销售交易列表,并希望提取唯一行列表,Excel 的高级筛选功能可以简化此任务。请按照以下说明进行操作。

A screenshot demonstrating a dataset used to extract unique values in Excel using Advanced Filter

  1. 转到“数据”选项卡,在“排序和筛选”组中选择“高级”。
    A screenshot of the Data tab in Excel, highlighting the Advanced Filter option
  2. 在“高级筛选”对话框中,您需要进行如下配置。
    1. 在“操作”部分,选择您需要的选项。由于我想将唯一列表定位到不同的位置,我选择“复制到其他位置”选项。
    2. 指定列表区域部分:
      • 从一列中提取唯一值:
        选择包含您要提取唯一条目的值的列。例如,要提取唯一的客户名称,在这种情况下选择 A1:A11。
      • 基于多列提取唯一行:
        选择包含您考虑的所有列的范围。在这种情况下,由于我想基于客户名称、销售和地区提取唯一行,我选择整个范围 A1:C11。
    3. 在“复制到”部分,指定您要粘贴唯一列表的位置。
    4. 选中“仅限唯一记录”复选框。
    5. 点击“确定”按钮。查看截图:
      A screenshot of the Advanced Filter dialog in Excel, configured to extract unique rows

结果

如下图所示,从原数据区域中提取了唯一行。

A screenshot of the result after using Excel's Advanced Filter to extract unique rows


在一列中使用多个条件筛选(匹配任一条件)

在一列中使用多个条件筛选数据可以显示符合您指定的任一条件的行。当您处理大型数据集并需要根据几个潜在匹配项缩小信息范围时,这尤其有用。以下是使用 Excel 的高级筛选功能实现此目的的方法:

步骤1:准备您的原始列表区域数据

确保您的列表区域数据集具有清晰的列标题,因为这些对于设置条件区域非常重要。在这里,我使用以下学生成绩表作为示例。

A screenshot of a dataset prepared for filtering in one column with multiple criteria

步骤2:条件区域设置

  1. 在列表区域上方或之外创建您的条件区域。您在条件区域中输入的标题必须与列表区域中的标题完全匹配才能正常工作。这里我的条件区域位于列表区域上方。
  2. 在标题下方列出您要匹配的每个条件。每个条件应在自己的单元格中,直接位于上一个条件下方。此设置告诉 Excel 匹配这些条件中的任意一个。
    在此示例中,我正在寻找“成绩大于95 或小于60”的学生,以便我可以有效地筛选列表区域以包括高分和低分的学生。因此,我在分数标题下的不同行中输入每个条件。整个条件区域如下所示:
    A screenshot of a criteria range set up for filtering data in Excel

步骤3:应用高级筛选

现在您可以应用高级筛选来完成任务,如下所示。

  1. 转到“数据”选项卡,在“排序和筛选”组中选择“高级”。
    A screenshot of the Data tab in Excel, highlighting the Advanced Filter option
  2. 在“高级筛选”对话框中,您需要进行如下配置。
    1. 在“操作”部分,选择您需要的选项。这里由于我想将筛选结果定位到不同的位置,我选择“复制到其他位置”选项。
    2. 在“列表区域”部分,选择整个列表区域 A7:D17
    3. 在“条件区域”部分,选择整个条件区域 A2:D4
    4. 在“复制到”部分,指定您要粘贴筛选结果的位置(这里我选择单元格 F8)。
    5. 点击“确定”以应用筛选。查看截图:
      A screenshot of the Advanced Filter dialog configured for multi-criteria filtering in Excel

结果

然后您可以看到,只有“分数”列匹配任一条件(>95 或 <60)的行被提取。

A screenshot of the filtered results in Excel after applying multiple criteria with Advanced Filter


告别手动设置复杂的条件区域

在 Excel 中解锁多条件筛选的强大功能,无需复杂操作!Kutools for Excel 的“超级筛选”功能提供了 Excel 原生高级筛选无法匹敌的无与伦比的易用性。只需几次点击即可支持以下高级筛选:

  • 在一列中按多个条件筛选
  • 在多列中按多个条件筛选
  • 按文本长度筛选数据
  • 基于年/月/周筛选数据...
  • 按区分大小写筛选字符串...

发现“超级筛选”如何彻底改变您的工作流程。点击此处下载 Kutools for Excel

A screenshot of Kutools for Excel Super Filter feature used for advanced multi-condition filtering

点击此处了解更多信息并查看如何使用此功能。


在多列中使用多个条件筛选

在介绍了在单列中使用多个条件筛选后,我们现在将注意力转向多列筛选。本节将指导您如何使用 AND、OR 和组合 AND/OR逻辑在不同列中应用多个条件。

  • 要应用 AND逻辑,请将条件放在同一行。
  • 要应用 OR逻辑,请将条件放在不同的行。

使用 AND逻辑(匹配所有条件)

使用 AND逻辑在多列中使用多个条件筛选数据意味着每一行必须满足不同列中指定的所有条件才能显示。以下是使用 Excel 的高级筛选实现此目的的方法:

步骤1:准备您的原始列表区域数据

确保您的列表区域数据集具有清晰的列标题,因为这些对于设置条件区域非常重要。在这里,我使用以下学生成绩表作为示例。

A screenshot showing an Excel table of student scores used as a dataset for applying AND logic

步骤2:条件区域设置

  1. 在列表区域上方或之外创建您的条件区域,输入与列表区域中完全匹配的标题。这里我的条件区域位于列表区域上方。
  2. 对于 AND逻辑,将所有条件列在其对应标题下的同一行。例如,如果我想筛选“班级 A”中成绩超过85 的学生,则条件区域应设置如下:
    A screenshot showing a criteria range setup for filtering data using AND logic in Excel

步骤3:应用高级筛选

现在您可以应用高级筛选来完成任务,如下所示。

  1. 转到“数据”选项卡,在“排序和筛选”组中选择“高级”。
    A screenshot of the Data tab in Excel, highlighting the Advanced Filter option
  2. 在“高级筛选”对话框中,您需要进行如下配置。
    1. 在“操作”部分,选择您需要的选项。这里由于我想将筛选结果定位到不同的位置,我选择“复制到其他位置”选项。
    2. 在“列表区域”部分,选择整个列表区域 A7:D16
    3. 在“条件区域”部分,选择整个条件区域 A2:D3
    4. 在“复制到”部分,指定您要粘贴筛选结果的位置(这里我选择单元格 F6)。
    5. 点击“确定”以应用筛选。查看截图:
      A screenshot of the Advanced Filter dialog box configured for AND logic

结果

在结果中,只有匹配指定列中所有条件的行将被显示或复制。在我们的示例中,只有班级 A 中成绩超过85 的学生被提取。

A screenshot of the filtered results after applying AND logic with Advanced Filter in Excel


使用 OR逻辑(匹配任一条件)

要在 Excel 的高级筛选中使用 OR逻辑(匹配任一条件)筛选多列数据,请按照以下步骤操作:

步骤1:准备您的原始列表区域数据

确保您的列表区域数据集具有清晰的列标题,因为这些对于设置条件区域非常重要。在这里,我使用以下学生成绩表作为示例。

A screenshot of a student scores dataset used to demonstrate OR logic filtering in Excel

步骤2:条件区域设置

  1. 在列表区域上方或之外创建您的条件区域,输入与列表区域中完全匹配的标题。这里我的条件区域位于列表区域上方。
  2. 使用 OR逻辑,将同一列的每组条件放在不同的行中,或在其对应标题下的不同行中列出每个条件。例如,如果我想筛选成绩高于90 或成绩为 F 的学生,则条件区域应设置如下:
    A screenshot of a criteria range setup for filtering data using OR logic in Excel

步骤3:应用高级筛选

现在您可以应用高级筛选来完成任务,如下所示。

  1. 转到“数据”选项卡,在“排序和筛选”组中选择“高级”。
    A screenshot of the Data tab in Excel, highlighting the Advanced Filter option
  2. 在“高级筛选”对话框中,您需要进行如下配置。
    1. 在“操作”部分,选择您需要的选项。这里由于我想将筛选结果定位到不同的位置,我选择“复制到其他位置”选项。
    2. 在“列表区域”部分,选择整个列表区域 A7:D17
    3. 在“条件区域”部分,选择整个条件区域 A2:D4
    4. 在“复制到”部分,指定您要粘贴筛选结果的位置(这里我选择单元格 F8)。
    5. 点击“确定”以应用筛选。查看截图:
      A screenshot of the Advanced Filter dialog box configured for OR logic

结果

这将根据指定的条件筛选您的数据,匹配列出的任一条件。如果某行匹配您指定的列中的任一条件,它将包含在筛选结果中。

在这种情况下,筛选将仅返回成绩高于90 或成绩为 F 的学生。

A screenshot of the filtered results after applying OR logic with Advanced Filter in Excel


使用 AND 和 OR逻辑

要在 Excel 的高级筛选中使用 AND 和 OR逻辑组合筛选多列数据,您可以按照以下步骤操作。

步骤1:准备您的原始列表区域数据

确保您的列表区域数据集具有清晰的列标题,因为这些对于设置条件区域非常重要。在这里,我使用以下学生成绩表作为示例。

A screenshot of a student scores dataset used to demonstrate AND and OR logic filtering in Excel.

步骤2:条件区域设置

  1. 在列表区域上方或旁边创建您的条件区域。包括与列表区域中完全匹配的列标题。这里我的条件区域位于列表区域上方。
  2. 在标题下方,使用 AND 和 OR逻辑输入条件。
    • 对于 AND逻辑,不同列的条件应放在同一行。
    • 对于 OR逻辑,条件应放在不同的行。
    • 对于组合的 AND-OR逻辑,将每组 OR 条件组织在不同的行块中。在每个块内,将 AND 条件放在同一行。
      例如,要筛选班级 A 中成绩大于90 的学生,或班级 B 中成绩为 B 的学生,请按如下方式设置条件区域:
      A screenshot of a criteria range setup combining AND and OR logic in Excel

步骤3:应用高级筛选

现在您可以应用高级筛选来完成任务,如下所示。

  1. 转到“数据”选项卡,在“排序和筛选”组中选择“高级”。
    A screenshot of the Data tab in Excel, highlighting the Advanced Filter option
  2. 在“高级筛选”对话框中,您需要进行如下配置。
    1. 在“操作”部分,选择您需要的选项。这里由于我想将筛选结果定位到不同的位置,我选择“复制到其他位置”选项。
    2. 在“列表区域”部分,选择整个列表区域 A7:D17
    3. 在“条件区域”部分,选择整个条件区域 A2:D4
    4. 在“复制到”部分,指定您要粘贴筛选结果的位置(这里我选择单元格 F8)。
    5. 点击“确定”以应用筛选。查看截图:
      A screenshot of the Advanced Filter dialog box configured for a combination of AND and OR logic

结果

Excel 将仅显示符合您复杂条件组合的行。

在此示例中,高级筛选将仅返回班级 A 中成绩大于90 的学生或班级 B 中成绩为 B 的学生。

A screenshot of the filtered results combining AND and OR logic with Advanced Filter in Excel


使用通配符的高级筛选

在 Excel 的高级筛选中使用通配符可以进行更灵活和强大的数据搜索。通配符是代表字符串中一个或多个字符的特殊字符,使得筛选文本模式变得更容易。以下是如何在 Excel 中使用通配符进行高级筛选的详细说明。

步骤1:准备您的原始列表区域数据

确保您的列表区域数据集具有清晰的列标题,因为这些对于设置条件区域非常重要。在此示例中,假设您有一个名称列表,其中一些名称遵循特定的命名模式。

A screenshot of a dataset of names used to demonstrate filtering with wildcards in Excel

步骤2:条件区域设置

  1. 在列表区域上方或旁边创建您的条件区域。包括与列表区域中完全匹配的列标题。这里我的条件区域位于列表区域上方。
  2. 在标题下方,使用通配符输入条件。
    • *:代表任意数量的字符,可以在字符串之前、之后或中间使用。
    • ?:代表特定位置的单个字符。
    在此示例中,我想筛选以字母“J”开头的名称,因此我在条件区域的名称标题下输入 J*。查看截图:
    A screenshot showing a criteria range setup with a wildcard to filter data in Excel

步骤3:应用高级筛选

现在您可以应用高级筛选来筛选所有以字母 J 开头的名称。

  1. 转到“数据”选项卡,在“排序和筛选”组中选择“高级”。
    A screenshot of the Data tab in Excel, highlighting the Advanced Filter option
  2. 在“高级筛选”对话框中,进行如下配置。
    1. 在“操作”部分,选择您需要的选项。这里由于我想将筛选结果定位到不同的位置,我选择“复制到其他位置”选项。
    2. 在“列表区域”部分,选择整个列表区域 A6:B11
    3. 在“条件区域”部分,选择整个条件区域 A2:B3
    4. 在“复制到”部分,指定您要粘贴筛选结果的位置(这里我选择单元格 D7)。
    5. 点击“确定”以应用筛选。查看截图:
      A screenshot of the Advanced Filter dialog box configured with wildcard criteria

结果

高级筛选将仅显示名称列中以字母“J”开头的行,符合条件区域中通配符指定的模式。

A screenshot of filtered results in Excel after applying wildcard criteria with Advanced Filter


仅提取某些列

使用 Excel 的高级筛选仅提取某些列对于分析大型数据集特别有用,因为您只需关注某些信息。

假设您的数据集位于范围 A7:D17 中,您希望根据 B2:D4 中指定的条件筛选此数据,并仅提取名称、分数和成绩列。以下是操作方法。

A screenshot showing a dataset and criteria range for extracting specific columns with Advanced Filter in Excel

步骤1:指定要提取的列

在数据集下方或旁边写下您希望提取的列的标题。这定义了“复制到”范围,筛选后的数据将出现在此处。在此示例中,我在范围 F7:H7 中输入名称、分数和成绩标题。

A screenshot of column headers specified for extracting specific columns in Excel with Advanced Filter

步骤2:应用高级筛选

现在您可以应用高级筛选,根据指定的条件仅筛选某些列。

  1. 转到“数据”选项卡,在“排序和筛选”组中选择“高级”。
    A screenshot of the Data tab in Excel, highlighting the Advanced Filter option
  2. 在“高级筛选”对话框中,进行如下配置。
    1. 在“操作”部分,选择“复制到其他位置”选项。
    2. 在“列表区域”部分,选择整个列表区域 A7:D17
    3. 在“条件区域”部分,选择整个条件区域 A2:D4
    4. 在“复制到”部分,选择您已写下要提取的列标题的范围(在此示例中为 F7:H7)。
    5. 点击“确定”以应用筛选。查看截图:
      A screenshot of the Advanced Filter dialog box configured to extract specific columns

结果

您可以看到提取结果仅包含指定的列。

A screenshot of filtered results in Excel showing extracted specific columns using Advanced Filter


高级筛选注意事项

  • 条件区域必须具有与列表区域完全匹配的列标题。
  • 如果将筛选结果复制到其他位置,则撤销(Control + Z)功能不可用。
  • 在 Excel 中应用高级筛选时,请确保在选择中包含列标题。省略标题可能会导致 Excel 错误地将范围中的第一个单元格视为标题,从而导致筛选不正确。
  • 筛选结果不会动态更新;数据更改后重新应用高级筛选以刷新它们。
  • 下表列出了您可以在高级筛选条件中使用的数字和日期比较运算符。
    比较运算符 含义
    = 等于
    > 大于
    < 小于
    >= 大于或等于
    <= 小于或等于
    <> 不等于

最佳 Office 办公效率工具

🤖 Kutools AI 助手:基于智能执行,彻底革新数据分析 生成代码创建自定义公式分析数据并生成图表调用 Kutools Functions
热门功能:查找、选中项的背景色或标记重复项|删除空行|合并列或单元格且不丢失数据|四舍五入(无公式)...
高级 LOOKUP多条件查找 (VLookup)多值查找 (VLookup)多表查找 (VLookup Across Multiple Sheets)模糊查找 (Fuzzy Lookup)...
高级下拉列表快速创建下拉列表依赖型下拉列表多选下拉列表...
列管理器添加指定数量的列移动列切换隐藏列的可见状态比较区域及列...
特色功能网格聚焦设计视图增强编辑栏工作簿 & 工作表管理器资源库(自动文本)|日期提取合并数据加密/解密单元格按列表发送电子邮件超级筛选特殊筛选(筛选粗体/倾斜/删除线等)...
热门15 大工具集12 款文本工具添加文本删除特定字符等)50+ 种图表 类型甘特图等)40+ 实用公式基于生日计算年龄等)19 款插入工具插入二维码按路径插入图片等)12 种转换工具小写金额转大写汇率转换等)7 款合并与分割工具高级合并行分割单元格等)...更多精彩等你发现
使用 Kutools,支持您的首选语言——包括英语、西班牙语、德语、法语、中文及40 多种其他语言!

用 Kutools for Excel 加速你的 Excel 技能,体验前所未有的高效办公。 Kutools for Excel 提供300 多项高级功能,助您提升效率,节省大量时间。点击此处,获取你最需要的功能...


Office Tab 为 Office 带来标签式界面,让你的工作更加轻松

  • 在 Word、Excel、PowerPoint 启用标签式编辑和阅读
  • 在同一窗口的新标签中打开和创建多个文档,无需新建窗口。
  • 办公效率提升50%,每天帮你减少上百次鼠标点击!