分享

除了VLOOKUP,这8个经典的查找公式你会几个?

 Excel不加班 2022-06-27 发布于广东

与 30万 粉丝一起学Excel

VIP学员的问题,要按分类,查找总计。


她原来的做法是一个单元格用一条公式,非常麻烦,希望只用一条公式下拉就完成。
=SUMIF(A:A,"总计",B:B)
=SUMIF(A:A,"总计",C:C)
=SUMIF(A:A,"总计",D:D)
……
其实,这个问题很简单,只是学员想复杂了而已,解决的方法非常多。

1.技巧法


复制,右键,转置,将多余的列删除掉就可以。这个不是今天的重点,一笔带过就行。

2.公式法

Excel的精髓在于公式,一个小小的问题,可以用无数公式解决。

分类的内容不完全一样,因此用FIND判断是否包含了,这是我最开始提供的公式。

=LOOKUP(1,0/FIND(J2,$B$1:$H$1),$B$14:$H$14)

这里再补充一些常用的查找公式。

垂直方向查找用VLOOKUP,而水平方向用HLOOKUP,用法一样。"*"&J2&"*"是包含J2的意思,第3参数是返回区域第14行,也就是总计这一行

=HLOOKUP("*"&J2&"*",$B$1:$H$14,14,0)

这里不太适合用VLOOKUP,如果一定要用也行,借助TRANSPOSE转置区域,作用跟选择性粘贴,转置一样。数组公式,按Ctrl+Shift+Enter三键结束。

=VLOOKUP("*"&J2&"*",TRANSPOSE($B$1:$H$14),14,0)

XLOOKUP这个是特殊版本才有的,知道这个用法存在就行。

=XLOOKUP("*"&J2&"*",$B$1:$H$1,$B$14:$H$14,,2)

除此之外,INDEX+MATCH也是用得非常多。

=INDEX($B$14:$H$14,MATCH("*"&J2&"*",$B$1:$H$1,0))

OFFSET的作用跟INDEX类似,也可以用在这里。

=OFFSET($A$14,0,MATCH("*"&J2&"*",$B$1:$H$1,0))

这里的分类是按顺序的,也可以用ROW取代MATCH。

=OFFSET($A$14,0,ROW(A1))

其实,用SUMIF、SUMPRODUCT之类的求和函数也可以。

=SUMIF($B$1:$H$1,"*"&J2&"*",$B$14:$H$14)

=SUMPRODUCT(ISNUMBER(FIND(J2,$B$1:$H$1))*$B$14:$H$14)

条条道路通罗马,平常多学习,才能找到最适合自己的路。


请把「Excel不加班」推荐给你的朋友

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多