Excel - FILTER 函数
FILTER 函数
Excel 筛选函数允许您动态筛选源数据,并根据用户指定的约束仅提取那些值。它是 Microsoft Excel 动态数组函数类别的一部分,它始终处理数组而无需按下 Ctrl+Shift+Enter 键。筛选函数是在 EXCEL 365 中引入的。
它对数据清理、转换和提取方法很有帮助。例如,如果您希望仅检索那些已跟踪 2000 米的登山者的姓名。
兼容性
此动态数组函数与以下版本的 Microsoft Excel 兼容 −
- Excel for Microsoft 365
- Excel for Microsoft 365 for Mac
- Excel for the web
- Excel 2024
- Excel 2024 for Mac
- Excel 2021
- Excel 2021 for Mac
- Excel for iPad
- Excel for iPhone
- Excel for Android tablets
- Excel for Android 手机
语法
FILTER 的语法函数如下 −
=FILTER(array,include,[if_empty])
参数
您可以将以下参数与 FILTER 函数一起使用 −
参数 | 描述 | 必需/可选 |
---|---|---|
array | 它指定数组或选定的单元格范围。 | 必需 |
include | 表示应用于特定单元格范围的条件。 | 必需 |
if_empty | 如果单元格范围与条件不匹配,则显示文本字符串。 | 可选 |
注意事项
- 输入 Filter 函数后,请确保工作表包含足够的空单元格来填充动态数组值;否则可能会出现 #SPILL 错误。
- 如果选定的单元格范围不满足条件且第三个参数为空。在这种情况下,FILTER 函数将检索 #CACL!错误。
- 如果第二个参数包含无效条件,则 Filter 函数将检索 #VALUE! 错误。
FILTER 函数示例
练习以下示例以了解 Excel 中 FILTER 函数的用法。
示例 1
Excel 中的 FILTER 函数用于根据条件从范围中提取特定数据。
解决方案
步骤 1 −首先,考虑由名为Job_rl、Monthly Salary和Department的各种列组成的样本数据集。

步骤 2 − 由于您只希望Job_rl、Monthly Salary和Department,因此动态数组将仅是包含单元格范围B2:D12的这些列的单元格值。在J5单元格中输入公式=FILTER(B2:D12,C2:C12>L2),然后按Enter键。

因此,Filter 函数将过滤数据集并显示满足月薪大于 45,000 条件的记录。

注意 − 您在J6单元格中输入 Filter 函数,它会自动填充多个值。在前面的数组公式中,按 Enter 键会显示错误。
示例 2:使用筛选函数的通配符条件
在 FILTER 函数中使用通配符来匹配部分文本条件。
解决方案
假设您只想显示那些以 三个字母的 eer 结尾的工作角色。
首先,在 J5 单元格中输入公式 =FILTER(B2:H12,RIGHT(B2:B12,LEN(L2))=L2,"Not exist"),然后按 Enter 键。在此 Filter 公式中,第一个参数指定单元格区域 B2:H12,第二个参数表示单元格区域 B2:B12 中隐含的 RIGHT 函数,并确定 L2 单元格引用的长度。

因此,Filter 函数仅检索职位以 eer 结尾的记录。

下载练习表
您可以下载并使用示例数据表来练习 FILTER 函数。