MICROSOFT

EP03. “Advanced Filter 高级筛选”

首页 Microsoft 工具 Excel · Data Analysis · Filter · EP03
约 5 分钟· #EP03#Excel#Filter
🔒 登录后可标记已读
  • 一般的 AutoFilter 只能做「这列等于什么」这种单一条件叠加
  • 遇到「A 国且第 4 季度」(AND)或「A 国第 4 季度 或 B 国第 1 季度」(OR)这类复杂逻辑,或要用公式当筛选条件,就需要 Advanced Filter(高级筛选)
  • 这篇笔记教你怎么设置条件区域(criteria range)来实现 AND、OR 和公式筛选
  • 前置知识是 EP01 的筛选基础
  • 学完能处理任何 AutoFilter 做不到的复杂筛选逻辑

重点内容


适用版本

桌面版通用(Excel 365 / 2021 / 2019 等)。


基本原理:条件区域(Criteria Range)

Advanced Filter 需要先在工作表空白处建一个「条件区域」——列标题要跟数据集里的列标题完全一致,条件区域跟数据集之间至少留一行空白,避免 Excel 把两者混在一起判断。


AND 还是 OR,怎么选

逻辑条件区域写法例子
AND(同时满足)多个条件写在同一行US 且 Qtr 4
OR(满足其一)多个条件写在不同行US 且 Qtr 4,或 UK 且 Qtr 1

AND 条件(同时满足多个条件)

示例:筛出「Country = US 且 Quarter = Qtr 4」的记录。

  1. 在数据集上方或旁边输入条件:一行标题(Country、Quarter 等),标题下方同一行填 US 和 Qtr 4

[截图:条件区域示例,Country 和 Quarter 两个条件填在标题下方同一行]

  1. 点击数据集内任意单元格
  2. Data → Sort & Filter → Advanced
  3. 「Criteria range」选取刚才建的条件区域(例如 A1:D2)
  4. 点击 OK

[截图:Advanced Filter 对话框,Criteria range 已选取条件区域]

结果:只显示 US 且 Qtr 4 的记录(两个条件同一行代表 AND,要同时满足)。


OR 条件(满足任一条件即可)

  1. 在条件区域新增一行,填第二组条件(比如 UK、Qtr 1),条件区域范围变成 A1:D3
  2. 重复上面 Advanced Filter 的步骤,Criteria range 选到 A1:D3

结果:显示「US 且 Qtr 4」或「UK 且 Qtr 1」的记录(不同行之间是 OR 逻辑)。


用公式当筛选条件

  1. 在数据集新增一列,输入一条会返回 TRUE/FALSE 的公式(引用第一条记录的单元格,例如引用 B6),当作这一列的筛选条件
  2. 条件区域范围包含这个公式列,比如 A1:E3
  3. 执行 Advanced Filter,Criteria range 选到含公式的完整范围

📌 用公式当条件时,这个条件所在的表头不能跟数据集里任何一个列标题相同(可以留空或写别的字,比如 Formula),否则 Excel 会误判成一般条件。公式本身要用相对引用,指向数据集第一行对应的单元格。


其他选项

Advanced 对话框里还有两个常用选项:

  • Copy to another location(复制到其他位置):把筛选结果复制到别处,不影响原数据显示
  • Unique records only(仅显示唯一记录):配合筛选同时去重

学完你会

  • ✅ 建条件区域,用 Advanced Filter 做 AutoFilter 做不到的 AND/OR 组合筛选
  • ✅ 分清同一行是 AND、不同行是 OR,不再搞混
  • ✅ 用公式当筛选条件,处理更灵活的判断逻辑

常见错误

  • 条件区域跟数据集之间没留空白行,导致 Excel 把条件区域本身也当成数据的一部分
  • AND / OR 逻辑写反——同一行是 AND(都要满足),不同行才是 OR(满足其一即可),很容易搞混
  • 用公式做条件时,把公式表头写成跟数据集列名相同的文字,导致 Excel 误判成普通条件而不是公式条件

Sources

Blog / Website:

  1. Advanced Filter