Excel 怎么筛选数据(含 FILTER 函数、高级筛选)
表里几千行数据,只想看「华东区、金额大于一万的订单」——这是 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 区域=华南」。
步骤:
- 选中数据区域内任意一格 → 菜单「数据」→「高级」。
- 弹窗中「列表区域」选整个数据表(含标题行),「条件区域」选刚才建的条件块。
- 如果想原地过滤,选「在原有区域显示筛选结果」;如果想输出到别处,选「将筛选结果复制到其他位置」,并在「复制到」处点击目标单元格。
- 如果要同时去掉重复行,勾选底部「选择不重复的记录」。
- 点「确定」。
高级筛选的优点是结果可以真正落到另一个区域,方便后续处理;缺点是条件区域要手动维护,格式要求严格——标题一字不差、行列关系要搞清楚,新手容易出错。数据更新后也不会自动刷新,要重新跑一遍。
如果只是想去重而不筛选,可以直接看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 筛选的几个小麻烦
用了一段时间会发现,Excel 原生筛选有几个地方让人头疼:
- 高级筛选门槛高:条件区域格式要求严格,标题必须和数据表完全一致,行列逻辑(AND/OR)靠位置表达,不直观,出错了不报错只是结果不对。
- FILTER 只有新版才有:旧版 Excel 用不了,多人协作的文件不敢用,公式引用范围也需要手动圈准。
- 筛完要复制走:自动筛选的结果是「隐藏行」,不是真正提取出来的数据。想在筛选结果上做汇总、做图表,要先复制可见行,再粘到新表,再做计算——多了好几步。
- 数据量大了变卡:几万行开自动筛选下拉加载慢,FILTER 数组公式大范围计算也会拖慢整个工作簿。
- 筛选状态不可持久:关掉文件再打开,之前的筛选条件要重新设。
五、用超级表筛选:多条件叠加、几万行跟手、筛完直接汇总
超级表(TableDI)是一款在 macOS 和 Windows 上离线运行的桌面端表格助手,核心就是为大表高频操作而生的。筛选是超级表实证最强的核心功能——不用写条件区域,不用记函数语法,点选界面多条件叠加,几万行也跟手不卡。
步骤:
- 把 Excel 文件拖入超级表,或直接新建表格导入数据。
- 点击列标题旁的筛选图标,选择筛选条件(等于、包含、大于、介于……)并填入值。
- 需要多个条件时,继续在其他列上点选条件——条件自动叠加,默认 AND。
- 筛选结果实时展示在表格里,不是隐藏行,而是真正的动态视图。
- 筛完直接在当前视图上做分组汇总、做看板——结果跟着筛选条件联动,不用再复制到另一张表。
筛选条件可以保存为「视图」,下次打开文件直接切换到对应视图,不用重新设。同一份数据可以同时有多个视图,比如「华东视图」「高金额视图」「本月订单视图」,互不干扰。想了解超级表的排序功能,思路完全一样,也是多条件可视化操作。
六、超级表筛选 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 版本不支持,用高级筛选或超级表来代替。