Excel 公式

Excel 怎么筛选数据(含 FILTER 函数、高级筛选)

更新于 2026-06-04 · 阅读约 7 分钟

表里几千行数据,只想看「华东区、金额大于一万的订单」——这是 Excel 里几乎每天都要做的事。本文从最基础的自动筛选讲起,一路覆盖多条件筛选、高级筛选、新版 FILTER 函数,再教你用超级表(TableDI)做筛选——多条件叠加点几下就好,几万行也跟手,筛完还能直接接汇总或做看板,不用再把结果复制到另一张表。


一、自动筛选:最常用的基础操作

自动筛选是 Excel 内置的快捷筛选面板,适合临时查看某几个值,不用写公式,鼠标点几下即可。

开启方式:选中数据区域内任意一格 → 顶部菜单「数据」→「筛选」,或直接按 Ctrl + Shift + L(Mac 上是 ⌘ + Shift + L)。每列标题右侧会出现下拉箭头。

按列筛选的三种子模式:

  • 文本筛选:下拉后直接勾选/取消勾选某几个值,也可用「文本筛选 → 包含/开头是/等于」等规则。
  • 数字筛选:下拉 → 数字筛选 → 大于、介于、前 N 项……适合金额、数量类字段。
  • 日期筛选:下拉 → 日期筛选 → 今天、本周、本月、特定年份……Excel 会自动识别日期格式并按时间粒度分组。

多条件叠加:在多列标题上分别设置筛选条件,Excel 默认取交集(即同时满足所有列的条件)。例如先按「区域=华东」过滤,再按「金额 > 10000」过滤,结果是两个条件都满足的行。

清除筛选:菜单「数据」→「清除」,或再按一次 Ctrl + Shift + L 关闭筛选。

自动筛选的局限
结果是「隐藏行」,并没有把数据真正提取出来。如果要把筛选结果复制到另一个位置,要先选中可见行(Ctrl + G → 定位条件 → 可见单元格),否则会把隐藏行也一起复制过去。

二、高级筛选:筛到另一区域、支持 OR 条件、可去重

自动筛选只能在原表上隐藏行,且多列之间只能 AND(交集)。如果需要「OR 条件」(比如区域是华东或华南)、或者想把筛选结果直接输出到另一个区域,就需要用「高级筛选」。

操作前先建条件区域:在空白处新建一个区域,第一行是列标题(必须和数据表里的标题完全一样),第二行起写条件。同一行的多个条件是 AND,不同行之间是 OR。

例如:

  • 第一行:区域(和数据表标题一字不差)
  • 第二行:华东
  • 第三行:华南

这样条件区域就表示「区域=华东 OR 区域=华南」。

步骤:

  1. 选中数据区域内任意一格 → 菜单「数据」→「高级」。
  2. 弹窗中「列表区域」选整个数据表(含标题行),「条件区域」选刚才建的条件块。
  3. 如果想原地过滤,选「在原有区域显示筛选结果」;如果想输出到别处,选「将筛选结果复制到其他位置」,并在「复制到」处点击目标单元格。
  4. 如果要同时去掉重复行,勾选底部「选择不重复的记录」。
  5. 点「确定」。

高级筛选的优点是结果可以真正落到另一个区域,方便后续处理;缺点是条件区域要手动维护,格式要求严格——标题一字不差、行列关系要搞清楚,新手容易出错。数据更新后也不会自动刷新,要重新跑一遍。

如果只是想去重而不筛选,可以直接看Excel 去重 / 删除重复项,有更直接的方法。

三、FILTER 函数:动态溢出,新版 Excel 专属

Microsoft 365 和 Excel 2021 及以上版本引入了 FILTER 函数,可以用公式动态提取满足条件的行,结果会自动「溢出」到相邻空格,不用手动拖。

基本语法:

=FILTER(区域, 条件, [找不到时返回的值])

例如,把 A1:D100 这张订单表里「区域=华东」的所有行提取出来:

=FILTER(A1:D100, B1:B100="华东", "无结果")

其中 B1:B100="华东" 会生成一个 TRUE/FALSE 数组,FILTER 只保留对应 TRUE 的行。

多条件 AND(同时满足):* 连接两个条件数组:

=FILTER(A1:D100, (B1:B100="华东")*(C1:C100>10000), "无结果")

多条件 OR(满足其一):+ 连接:

=FILTER(A1:D100, (B1:B100="华东")+(B1:B100="华南"), "无结果")

FILTER 函数的好处是结果动态更新——源数据变了,公式结果自动跟着变,不用重新操作。坏处是只有新版 Excel(Microsoft 365 / Excel 2021+)才有,旧版 Excel 2016、2019 里输入 =FILTER( 直接报错,没有降级方案。

版本依赖注意
如果你的文件需要分享给用不同版本 Excel 的同事,FILTER 函数会让对方看到错误值。这种场景建议改用自动筛选或高级筛选,或换到超级表来做。

四、Excel 筛选的几个小麻烦

用了一段时间会发现,Excel 原生筛选有几个地方让人头疼:

  • 高级筛选门槛高:条件区域格式要求严格,标题必须和数据表完全一致,行列逻辑(AND/OR)靠位置表达,不直观,出错了不报错只是结果不对。
  • FILTER 只有新版才有:旧版 Excel 用不了,多人协作的文件不敢用,公式引用范围也需要手动圈准。
  • 筛完要复制走:自动筛选的结果是「隐藏行」,不是真正提取出来的数据。想在筛选结果上做汇总、做图表,要先复制可见行,再粘到新表,再做计算——多了好几步。
  • 数据量大了变卡:几万行开自动筛选下拉加载慢,FILTER 数组公式大范围计算也会拖慢整个工作簿。
  • 筛选状态不可持久:关掉文件再打开,之前的筛选条件要重新设。

五、用超级表筛选:多条件叠加、几万行跟手、筛完直接汇总

超级表(TableDI)是一款在 macOS 和 Windows 上离线运行的桌面端表格助手,核心就是为大表高频操作而生的。筛选是超级表实证最强的核心功能——不用写条件区域,不用记函数语法,点选界面多条件叠加,几万行也跟手不卡。

步骤:

  1. 把 Excel 文件拖入超级表,或直接新建表格导入数据。
  2. 点击列标题旁的筛选图标,选择筛选条件(等于、包含、大于、介于……)并填入值。
  3. 需要多个条件时,继续在其他列上点选条件——条件自动叠加,默认 AND。
  4. 筛选结果实时展示在表格里,不是隐藏行,而是真正的动态视图。
  5. 筛完直接在当前视图上做分组汇总、做看板——结果跟着筛选条件联动,不用再复制到另一张表。

筛选条件可以保存为「视图」,下次打开文件直接切换到对应视图,不用重新设。同一份数据可以同时有多个视图,比如「华东视图」「高金额视图」「本月订单视图」,互不干扰。想了解超级表的排序功能,思路完全一样,也是多条件可视化操作。

六、超级表筛选 vs Excel 原生筛选

对比项Excel 自动筛选 / 高级筛选 / FILTER超级表
多条件叠加多列 AND 勉强做,OR 要条件区域点选叠加,AND/OR 可视化
几万行速度下拉加载慢,FILTER 数组卡跟手不卡
结果是否真正提取自动筛选是隐藏行,复制要额外操作动态视图,直接在结果上继续操作
筛完做汇总/看板要复制结果到新表再做直接在筛选视图上做分组汇总
条件保存关文件后条件丢失保存为命名视图,随时切换
版本依赖FILTER 需要 Excel 2021+/M365离线运行,macOS/Windows 均支持

常见问题

Excel 怎么多条件筛选?

自动筛选下,在多列标题上分别设置条件,列与列之间默认 AND(交集)。如果需要 OR(比如「区域是华东或华南」),要用高级筛选:建条件区域,同一列的两个值写在不同行,然后「数据→高级」运行。新版 Excel 也可以用 FILTER 函数,用 + 连接两个条件数组实现 OR。

高级筛选怎么去重?

高级筛选弹窗里,勾选底部「选择不重复的记录」,筛选结果就会自动去掉完全相同的重复行。如果只想对单列去重,也可以直接用「数据→删除重复项」,更直接——详见Excel 去重 / 删除重复项

FILTER 函数哪个版本才有?

FILTER 函数是 Microsoft 365 订阅版和 Excel 2021(含)以上才有的新函数。Excel 2019、2016 及更早版本不支持,输入公式会显示错误。如果你的 Excel 版本不支持,用高级筛选或超级表来代替。

多条件筛选几万行,不想再等 Excel 转圈?

免费下载超级表,点几下叠加条件、几万行跟手,筛完直接汇总做看板

免费下载(macOS / Windows)