比Vlookup函数好用100倍,又一个超牛Excel函数来了!
最近由Vlookup引起的查找高手对决中,Xlookup、Wlookup函数出尽了风头。而此时还有一个低调的Excel2019函数偷笑不语,论本事,它也可以秒杀Vlookup,它就是:
FILTER函数
一、用途
基于一定的条件筛选数据。它只能在Excel2019和office365版中使用。
兰色评:用词是筛选数据,说明返回值可以是多个。
二、用法介绍
= Filter(数组,条件,如果查找不到返回值)
语法说明:
数组:给定的一组数据,可以是多行多列。
条件:筛选数据的条件
如果查找不到返回值:等同于iferror+Vlookup用法
三、示例
它究竟有什么本事可以秒杀Vlookup函数?看几个示例就明白了。
1、单条件查找数据
=FILTER(C2:C7,A2:A7=A11)
相对于Vlookup复杂的参数,Filter公式简单好理解,给定一个区域和查找条件,返回结果。
2、从右向左查找
=FILTER(A2:A7,B2:B7=A11)
Vlookup函数不支持从右向左查找,而Filter函数轻松完成。
3、多条件查找
=FILTER(D2:D7,(A2:A7=A11)*(B2:B7=B11))
Vlookup最大的缺陷是不支持多条件查找,而对于Filter函数是如此简单
4、查找不到结果的处理
=FILTER(C3:C8,A3:A8=A12,'')
当Vlookup公式查找不到结果时,需要外套iferror函数才可以把错误值转换成其他值,比如空值。而Filter函数第3个参数可以直接设置,超级简单。
5、同时查找多列数据
=FILTER(B$2:G$7,A$2:A$7=A11,'')
如下面动图演示,你没看错,一个Filter公式竟然可以同时返回多列查找结果(只需要第1个参数设置多列)。而Vlookup函数只能借Column函数才可以实现。
6、同时返回多列多行结果
=FILTER(A2:C7,B2:B7=A11,'')
看了这个公式才明白体会什么是神一样的查找函数,它它它...竟然可以用一个这么简单的公式实现数据表的动态筛选。
7、筛选最大值的记录
=FILTER(A2:C7,C2:C7=MAX(C2:C7))
别以为filter的条件只是简单的对比数值,它还可以套用其他函数。
8、筛选销售利润前3名记录
=FILTER(A2:B7,B2:B7>LARGE(B2:B7,4))
这对于Vlookup简单是天书啊。
如果借助另一个2019函数SORT还可以实现自动升降排序
=SORT(FILTER(A2:B7,B2:B7>LARGE(B2:B7,4)),2,-1)
现在Excel中最惨的函数就是Vlookup,被一群新函数群殴。不过话又说回来,很多同学还没升级到最新版本之前,Vlookup还是他们手中最得力的查找工具。