在 Excel 中,所谓的“筛选数组”通常指的是使用 动态数组函数(Dynamic Array Functions)来根据条件提取数据,并自动溢出到多个单元格中,这与传统的“高级筛选”或“Ctrl+Shift+Enter”数组公式不同,现代 Excel(Office 365、Excel 2021 及更新版本)提供了更强大的工具。
以下是几种最常用的方法,按推荐程度排序:
使用 FILTER 函数(最推荐)
FILTER 是专门用于从数据区域中筛选出符合指定条件的行或列的函数。
语法
=FILTER(array, include, [if_empty])
- array:要筛选的数据区域。
- include:布尔数组(TRUE/FALSE),表示哪些行/列符合条件。
- if_empty(可选):如果未找到匹配项,返回的内容(如 “无结果”)。
示例
假设数据在 A2:C10,A 列是“部门”,B 列是“姓名”,C 列是“销售额”,你想筛选出“部门”为“销售部”的所有行。
=FILTER(A2:C10, A2:A10="销售部", "无数据")
多条件筛选(AND 逻辑)
如果要筛选“销售部”且“销售额”大于 5000 的数据:
=FILTER(A2:C10, (A2:A10="销售部") (C2:C10>5000), "无数据")
注意:在 Excel 中,多个条件之间用 表示 AND(与),用 表示 OR(或)。
使用 SORT + FILTER(筛选后排序)
如果你希望筛选结果按特定顺序排列,可以将 SORT 和 FILTER 嵌套使用。
示例
筛选“销售部”数据,并按“销售额”降序排列:
=SORT(FILTER(A2:C10, A2:A10="销售部"), 3, -1)
3表示按第 3 列(即 C 列,销售额)排序。-1表示降序(1为升序)。
使用 UNIQUE + FILTER(去重筛选)
如果你只想获取符合条件的唯一值(所有销售过产品的客户名单,不重复):
示例
从 A 列(客户名)中筛选出名称包含“张”的唯一客户:
=UNIQUE(FILTER(A2:A100, ISNUMBER(SEARCH("张", A2:A100)), "无结果"))
使用 XLOOKUP 或 INDEX/MATCH 数组公式(旧版兼容)
如果你使用的是 Excel 2019 或更早版本,不支持动态数组函数,可以使用以下方法:
使用 INDEX + SMALL + IF 数组公式
用于提取第 N 个匹配项。
=INDEX(结果列, SMALL(IF(条件列=条件, ROW(条件列)-MIN(ROW(条件列))+1), ROW(A1)))
重要:输入后需按 Ctrl + Shift + Enter 确认(形成 数组公式)。
使用 FILTERXML(仅限 Windows)
一种巧妙的方法,利用 XML 解析进行筛选:
=FILTERXML("<t><s>"&TEXTJOIN("</s><s>", TRUE, IF(条件列=条件, 结果列, ""))&"</s></t>", "//s[.!='']")
注意:此方法返回的是垂直数组,可能需要配合
TRANSPOSE使用。
使用“高级筛选”(非公式方法)
适用于不想写公式、只需一次性提取数据的场景。
- 在空白区域设置条件区域(E1:F2,E1 写“部门”,E2 写“销售部”)。
- 点击 数据 选项卡 → 高级(在“排序和筛选”组中)。
- 选择:
- 列表区域:你的原始数据范围。
- 条件区域:你设置的条件范围。
- 复制到:指定一个空白单元格作为输出位置。
- 勾选“选择不重复的记录”(如需去重)。
常见问题与技巧
| 问题 | 解决方案 |
|---|---|
| #CALC! 错误 | 通常是因为 FILTER 没有找到任何匹配项,请检查 include 参数是否正确,或使用 if_empty 参数提供默认值。 |
| 结果溢出错误 | 如果筛选结果太大,覆盖了其他数据,Excel 会显示 #SPILL! 错误,请确保输出区域右侧和下方有足够的空白单元格。 |
| 多条件 OR 逻辑 | 使用 连接条件,(A2:A10="销售部") + (A2:A10="技术部") |
| 模糊匹配 | 使用 ISNUMBER(SEARCH("关键词", 文本列)) 或 ISNUMBER(FIND(...)) 作为条件。 |
总结建议
- 首选:
FILTER函数(简洁、强大、自动溢出)。 - 需要排序:
SORT(FILTER(...))。 - 需要去重:
UNIQUE(FILTER(...))。 - 旧版 Excel:使用
INDEX+SMALL+IF数组公式或“高级筛选”。
如果你有具体的数据结构或筛选需求,可以提供示例,我可以为你编写具体的公式。
首发原创文章,作者:世雄 - 原生数据库架构专家,如若转载,请注明出处:https://idctop.com/article/477427.html



