作为职场打工人,相信大家对Vlookup函数都不陌生,她拯救了千千万万表哥表姐于苦海之中,说她是函数界的大众情人也不为过。
然鹅,有一个新的函数横空出世,她不仅能完成Vlookup的查询操作,还有了进一步优化。
她就是,我们今天要给大家介绍的新进女神:Filter函数。
早在2019年,Office365就上线了这个函数,令我等用WPS的小伙伴羡慕不已。
如今,我们终于可以体验一把这个强大的函数了!在此谢谢CCTV!谢谢WPS霸霸!
那接下来,就让我们一起看看Filter函数的具体用法吧!
Vlookup函数运用最广泛的功能,就是通过单列条件查找所需数据,Filter函数同样可以。
举个栗子!
我们要根据「性别」查找员工「姓名」。
看看这波操作:
只需2个参数就能完成,是不是很方便呢?
Filter函数,可以根据自定义条件筛选出需要的结果。
它由数组、包括、空值三个参数组成:
=FILTER数组,包括,[空值])参数1-数组:要查找的区域或数组
参数2-包括:查找条件
参数3-空值:自定义空值结果的描述(可选)
我们在单元格中输入公式:
=FILTER(B2:B30,C2:C30=I1)公式中:
要查找的区域或数组:B2:B30员工姓名列。
查找条件:C2:C30=I1性别列是否等于「男」。
此处引用了单元格下拉列表功能,小伙伴们可以点击下面这个链接巩固知识哦!
小白都能学会的多级下拉列表,让你半小时搞定别人大半天的工作!
需要注意的是,WPS不支持动态数组和溢出功能,因此:
选择数据显示范围时要框选整个数据存放区域,WPS会将多余的单元格自动标记为错误值「#NA」(如果需要去掉错误值,可以借助Index和Iferror函数嵌套完成);Office365正常显示,不需要框选。
WPS界面:
Office365界面:
在WPS中完成Filter函数的输入,不能直接按回车键,需要按住「Ctrl」+「Shift」+「Enter」三键来完成公式输入。
输入完成后,查看公示栏,你会看到函数公式被一对大括号框选起来,这就是WPS数组公式的显示方式。
如果只有一条内容满足要求,WPS会自动填充整个框选区域,Office365则正常显示。
看到这里,大家心里可能会有疑问:这个查找功能和Vlookup函数并无多大区别呀?
那你可就小瞧她啦!接着往下看,继续感受新进女神的魅力吧!
上个案例我们通过一对一条件查询了所有员工姓名。
那么,是否能通过一个条件查找出多条信息呢?
看看下面这个栗子:
操作走起:
来看看公式吧:
=FILTER(A2:F30,C2:C30=I1)要查找的区域或数组:A2:F30员工所有信息列。
相较Vlookup函数要写多个公式而言,用Filter函数写一个就可以搞定!
芜湖~简直不要太棒哦!
距离下班不到10分钟!此时老板要求我们在大量数据中找出所有「地区」包含湖北省的员工信息,该怎么办?
Filter函数助我们一臂之力!(不加班是我们最后的倔强~)
看看这波操作,不需要10分钟,2分钟就能完成!(还能继续摸鱼8分钟呢.jpg)
公式如下:
=FILTER(A2:E30,ISNUMBER(FIND($H$1,$E$2:$E$30)))千万不要被这个看起来很复杂的函数吓到,让我们来一步步拆解康康!
这是一个嵌套函数,我们通过Isnumber和Find函数来定位查找条件:
=FIND($H$1,$E$2:$E$30)Find是一个查找函数,可以在指定的单元格或者字符串中查找所需字符的位置。
=FIND(要查找的字符串,被查找的字符串,[从什么位置开始找])
我们首先用Find函数查找「湖北省」在「地区」中的位置,找到返回对应位置,未找到则返回错误值「#VALUE!」。
=ISNUMBER(FIND($H$1,$E$2:$E$30))Isnumber是一个判断函数,检测一个值是否为数值,对应返回True或False。
如果FIND函数找到了位置,Isnumber就返回True,否则返回False。
=FILTER(A2:E30,ISNUMBER(FIND($H$1,$E$2:$E$30)))最后,用Filter函数将返回为True的结果筛选出来。
这波操作有没有很厉害呢?
难度升级!老板收到表格后又布置了一个新任务:
查找入职年限大于10年或者销售额大于8000的员工信息,准备发奖励!(迟早有一天我也会有的
)
大家猜猜,这次需要几分钟?
还是2分钟搞定,不能再多了!
公式拆解:
=FILTER(A2:F30,(E2:E3010)+(F2:F308000))要查找的区域或数组:A2:F30员工所有信息列。
查找条件:
E2:E30>10:入职年限列大于「10」,
F2:F30>8000:销售额列大于「8000」,
两个条件满足任意一个用「+」号连接。
怎么样,学会了Filter函数,按时下班还是难事吗?
除了任一条件查找,Filter函数还能同时查找满足两个条件的员工信息。
看看最后一个栗子吧!
在下面数据中,找到部门为「销售一部」的所有「女」员工信息。
以迅雷不及掩耳之势操作一波:
=FILTER(A2:F30,(A2:A30=I1)*(C2:C30=J1))要查找的区域或数组:A2:F30员工所有信息列。
A2:A30=I1:部门列等于「销售一部」,
C2:C30=J1:性别列等于「女」,
两个条件同时满足用「*」号连接。
等等......当我们换一个部门查询的时候,怎么显示了这么奇怪的东西?(不会要加班了吧?!)
别担心!看看下面这个知识点!
当查找区域没有满足条件的数据时,WPS会返回错误值「#CALC」。
此时,我们可以对FILTER的第三个参数进行设置,如:无信息。
=FILTER(A2:F30,(A2:A30=I1)*(C2:C30=J1),"无信息")注意,需将输入法切换到英文状态下再输入双引号哦!
古人诚不欺我,学会这个了方法,终于可以安心工(xia)作(ban)了~
如果你有不同的见解,欢迎积极留言,我们一起交流探讨吧!