Microsoft Lab
全部软件
Excel筛选(Filter)约 5 分钟

Advanced Filter 高级筛选

重点内容


适用版本

桌面版通用(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(仅显示唯一记录):配合筛选同时去重

学完你会

常见错误

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

Sources

Blog / Website:

  1. Advanced Filter
只记在你的浏览器里,换设备不会同步。