分享

Excel中这个新函数花样多,让所有查找函数都快下岗了:FILTER函数

 ExcelEasy 2022-09-10 发布于北京

FILTER函数的作用是筛选,简单的说,FILTER将Excel菜单中的筛选功能一直到了函数上,而且功能更加强大。从此,让数据处理更加简单了。

函数的语法非常简单,

array - 表示待筛选的数组或区域

include - 条件,表示对应于筛选的数组中,每行元素是否保留,如果为TRUE,就保留,否则,就筛掉。上图中,只有前三个元素:张三丰,郭靖,黄蓉被包含在筛选结果中。

if_empty - 可选参数,如果筛选结果为空,FILTER函数返回这个参数。

多条件筛选

FILTER函数可以根据多个条件进行筛选。这分为两种情况:

  1. 多个条件同时成立

  2. 其中一个条件成立即可

先看第一种,多条件同时成立的情形。

在这个例子中,需要筛选所有的一班的男同学,将条件相乘即可:

(D3:D11="男")*(C3:C11="一班")

另一种就是多个条件中成立一个条件即可:

这里,我们筛选明教和武当的所有同学,只要将两个条件相加即可:'

(E3:E11="明教")+(E3:E11="武当")
常用的筛选条件

下面我们针对常用的筛选条件举例说明。

1. 介于

筛选所有成绩介于60和80之间的同学,实际上是个同时成立的多条件

2. 包含和不包含

我们筛选所有姓张的同学。这里用了稍微复杂一些的条件:

ISNUMBER(SEARCH("张",B3:B11))

首先使用SEARCH函数在姓名列中查找是否包含“张”,结果有两种:

A. 姓名中包含张,比如张三丰,SEARCH的结果就是张在其中的位置:1。

B. 姓名中不含张,比如黄蓉,SEARCH的结果就是错误值。

再使用ISNUMBER函数来判断SEARCH的返回值是否为数值,也有两种结果:

A. 姓名中含有张的,结果为TRUE。

B. 姓名中不含张的,结果为FALSE。

于是就可以得到筛选结果了。

下面是不包含的例子:

筛选所有不姓张的同学,还是用SEARCH函数先判断每个姓名是否含张,再用ISERROR函数判断结果,那些不含张的都返回TRUE。

3. 开始和结尾

上面的例子实际上找的是名字中包含张或者不包含张。严格的姓张的同学应该是名字以张开始,可以使用下面的公式:

同样,返回以特定文本结尾的就使用RIGHT函数作为条件:

4. 筛选所有出现次数大于1的行

这种应用很特殊:

这里筛选的是表格中所有的重复行。用的条件是条件计数大于1的行:

COUNTIFS(B3:B13,B3:B13,C3:C13,C3:C13,D3:D13,D3:D13,E3:E13,E3:E13,F3:F13,F3:F13)

这个绕口令一般的函数,你看懂了吗?

5. 大小写敏感

绝大多数情况下,Excel是大小写不敏感的。要进行大小写敏感的匹配,可以使用EXACT函数,就像这样:

这个公式就是大小写不敏感的。ZSF和zsf实际是一样的。

这个公式才能找到大小写都一样的结果行。


详细解释请看视频



这里介绍的是FILTER函数的技巧,节选自新课程:

《Office 365中的新函数》

这门课程中详细介绍了Office 365中Excel的新特性,尤其侧重于动态数组以及XLOOKUP,XMATCH,TEXTJOIN,IFS/SWITCH,FILTER,SORTBY,UNIQUE等函数的使用技巧,采用大量有真实案例,可以快速提升你的数据处理能力。

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多