不管vlookup会不会,都要学的index+match组合公式!
在工作中,可以说几乎每天都要遇到查找匹配问题,都要用到vlookup函数公式,但是有时候vlookup函数公式确实不太方便,举个例子,左边是公司的工资表数据,我们要查找工资情况,我们会输入公式:
=VLOOKUP(F2,B:D,3,0)
但是经常我们会对原始表格进行修改,比如我们在原始表格部门前面插入了新的一列,工龄列。这个时候之前设置好的vlookup函数公式就会出错,又要重新进行设置
表格里面引用数据比较多的时候,更为麻烦,又或者说我们需要根据员工姓名来查找员工编号的时候,这就是一个从右向左的逆向查找,用vlookup也很不方便
所以说我们要学会index+match组合函数公式,这样的话,既使新增列,删除列,逆向查找等操作,都不会影响我们的公式结果
万能能用公式:
=index(结果列,match(查找值,查找列,0))
所以说如果我们需要根据员工姓名来查找员工编号的话,使用的公式就是:
=INDEX(A:A,MATCH(G2,B:B,0))
如果说我们需要根据员工性别,来查找工资的话,那么查找值,还是g2,查找列还是b:b,结果列变成了e列,所以公式就是
=INDEX(E:E,MATCH(G2,B:B,0))
这个时候,如果我们再新增一列性别列,原来设置好的公式也不用调整,结果仍然是对的
首先是match公式理解,=MATCH(F2,B:B,0),就是从b列中查找f2孙尚香这个值,在第几行,这里从上向下数过来就是第5行。
然后我们理解index(d:d,5),就是返回d列第5行的结果值
所以index+match组合的工作原理,就是查找值,先在查找列里面查找是第几位序号,然后再用index函数引用结果列的对应序号值
=INDEX(结果列,MATCH(查找值,查找列,0))
关于这个小技巧,你学会了么?动手试试吧!
必学函数组合INDEX+MATCH,比VLOOKUP函数好用100倍
工作中,我们常常会使用VLOOKUP来进行各种各样的查找,但有时候问题并不简单,用VLOOKUP函数实现比较难,这时候我们就可以考虑使用其它方法,比如我今天要重点跟大家讲解的INDEX+MATCH函数组合。
下面是INDEX+MATCH函数组合的几个用法,看看跟VLOOKUP相比,是否更加简单一点!
一、逆向查找。
下图中,根据F列的产品在B:D数据源中查找对应的编号。
方法一:使用INDEX+MATCH函数组合。
在G3单元格中输入公式“=INDEX($B$2:$B$7,MATCH(F3,$C$2:$C$7,0))”,按回车键,然后将公式下拉填充至G5单元格即可。
公式解析:
MATCH(F3,$C$2:$C$7,0):根据F3单元格的产品名称在C2:C7单元格区域中查找位置。这里返回的结果为5。也就是说产品E在C2:C7单元格区域中位置为5。
=INDEX($B$2:$B$7,5):根据MATCH函数查找到的位置在B2:B7单元格区域中取值。也就是说在B2:B7单元格区域中取出第5行的值,也就是G3单元格的结果Y1023。
方法二:使用VLOOKUP函数。
在G3单元格中输入公式“=VLOOKUP(F3,IF({1,0},$C$2:$C$7,$B$2:$B$7),2,0)”,按回车键,然后将公式下拉填充至G5单元格即可。
公式解析:
IF({1,0},$C$2:$C$7,$B$2:$B$7):因为VLOOKUP函数无法直接进行逆向查找,所以需要借助IF或者CHOOSE函数重组查找区域。该公式是将查找区域重组成一个产品在前,编号在后的新查找区域。
二、多条件查找。
下图中,根据H列的产品和I列的季度在B:F数据源中查找对应的销量。
方法一:使用INDEX+MATCH函数组合。
在J4单元格中输入公式“=INDEX($C$2:$F$7,MATCH(H4,$B$2:$B$7,0),MATCH(I4,$C$1:$F$1,0))”,按回车键,然后将公式下拉填充至J6单元格即可。
公式解析:
MATCH(H4,$B$2:$B$7,0):根据H4单元格的产品名称在B2:B7单元格区域中查找位置。这里返回的结果为3。
MATCH(I4,$C$1:$F$1,0):根据I4单元格的产品名称在C1:F1单元格区域中查找位置。这里返回的结果为2。
=INDEX($C$2:$F$7,3,2):根据MATCH函数查找到的位置在C2:F7单元格区域中取值。也就是说在C2:F7单元格区域中取出第3行,第2列的值,也就是J4单元格的结果320。
方法二:使用VLOOKUP函数。
在J4单元格中输入公式“=VLOOKUP(H4,$B$2:$F$7,MATCH(I4,$C$1:$F$1,0)+1,0)”,按回车键,然后将公式下拉填充至J6单元格即可。
公式解析:
MATCH(I4,$C$1:$F$1,0)+1:根据I4单元格的季度在C1:F1单元格区域中查找位置。这里返回的结果为2。因为B:F表格区域前面多了一列空白列,所以这里需要加1。
三、模糊查找。
下图中,我们要根据E列的公司名称在B:C数据源中查找对应的销售额。
方法一:使用INDEX+MATCH函数组合。
在F3单元格中输入公式“=INDEX($C$2:$C$5,MATCH(\”*\”&E3&\”*\”,$B$2:$B$5,0))”,按回车键,然后将公式下拉填充至J6单元格即可。
公式解析:
MATCH(\”*\”&E3&\”*\”,$B$2:$B$5,0):这里使用通配符“星号(*)”作为查找的对象,\”*\”&E3&\”*\”表示包含E3单元格内容的字符。
方法二:使用VLOOKUP函数。
在F3单元格中输入公式“=VLOOKUP(\”*\”&E3&\”*\”,$B$2:$C$5,2,0)”,按回车键,然后将公式下拉填充至J6单元格即可。
公式解析:
\”*\”&E3&\”*\”:将E3单元格前后连接两个通配符作为查找值,这里表示包含E3单元格内容的字符即可。
INDEX+MATCH组合和VLOOKUP对比,你觉得哪个更简单呢?欢迎留言讨论,期待您的点赞和转发分享!
本文作者及来源:Renderbus瑞云渲染农场https://www.renderbus.com
文章为作者独立观点不代本网立场,未经允许不得转载。