蓝狮娱乐
关于蓝狮娱乐

你的位置:蓝狮娱乐 > 关于蓝狮娱乐 >

TOROW+FILTER真的是绝配,再也不用VLOOKUP+辅助列了,真方便!

发布日期:2024-09-02 14:33    点击次数:127

VIP学员的问题,要根据财务编码,查找状态为已结束,对应的全部立项编号。

图片

早期,卢子都是采用VLOOKUP+辅助列,这种说了几十次,就一笔带过,重点说TOROW+FILTER。辅助列:=IF(D2="已结束",B2&COUNTIFS(B$2:B2,B2,D$2:D2,"已结束"),"")

图片

VLOOKUP:=IFERROR(VLOOKUP($F2&COLUMN(A1),$A:$D,3,0),"")

图片

时代变了,现在应该把更多的时间放在研究新函数上面,别老想着那些老函数。假如现在要根据财务编码,查找全部对应的立项编号。=FILTER(B2:B16,A2:A16=E2)

图片

假如现在要根据财务编码,状态为已结束,查找全部对应的立项编号。也就是再增加一个条件。=FILTER(B2:B16,(A2:A16=E2)*(C2:C16="已结束"))

图片

当财务编码没有对应值的时候,返回错误值。

图片

其实,FILTER函数还存在第三参数,可以让错误值显示空白。=FILTER(B2:B16,(A2:A16=E8)*(C2:C16="已结束"),"")

图片

语法:=FILTER(返回区域,(条件区域1=条件1)*(条件区域2=条件2),错误值返回值)到这里就解决了查找的问题,现在只需将一列的内容转换成一行。这时TOROW就派上用场。=TOROW(FILTER(B2:B16,(A2:A16=E2)*(C2:C16="已结束"),""))

图片

差点忘了说,这个公式因为需要下拉,区域记得锁定哦。除此之外,其他所有公式可以不用锁定,因为公式会自动拓展。

=TOROW(FILTER($B$2:$B$16,($A$2:$A$16=$E2)*($C$2:$C$16="已结束"),""))

图片

问题解决了,下面再拓展一些案例。

1.将状态为已结束的内容自动引用出来

FILTER的返回区域,可以是一列,也可以是多列。

=FILTER(A2:C16,C2:C16="已结束")

图片

2.将立项编号包含T的内容自动引用出来

条件判断的时候,支持嵌套其他函数。用FIND可以判断是否包含T,满足返回数字,不满足返回错误值。错误值会导致引用出错,再嵌套ISNUMBER。

=FILTER(A2:C16,ISNUMBER(FIND("T",B2:B16)))

图片

3.将财务编码为101100001或101100012的内容自动引用出来

同时满足2个条件用*,满足其中1个条件用+(也就是或)。

=FILTER(A2:C16,(A2:A16="101100001")+(A2:A16="101100012"))

图片

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报。

Powered by 蓝狮娱乐 @2013-2022 RSS地图 HTML地图