达永编程网

程序员技术分享与交流平台

比VLOOKUP查询还好用的MATCH和INDEX组合

VLOOKUP函数一直排在使用率最高的前几位,除了SUM、IF这些基础函数

大家想必使用率比较高的就是VLOOKUP了,但是VLOOKUP也有一些缺陷

那就是他不能实现逆向查询……


此时,就会有无数的函数爱好者,你瞎讲,明明我可以的

你看IF({1,0})还有什么什么……


但是不管你如何操作,都是打破不了他无法逆向(从右到左)查询

目前能实现的方式,本质上都是在构建从左到右。


那么我们怎么才能实现随心所欲的去查询?

就用他们吧INDEX+MATCH


函数语法


案例之前我们先大概说一下用法,方便大家学习:

1、INDEX(区域,行,【列】):在区域中得到行列交叉点的值

当区域是单行单列时,列参数可以不写

还有第四参数,这里不涉及,不展开


2、MATCH(查找内容,区域,匹配方式):返回查找内容在区域中的位置

匹配方式有三种,常用的是0-精确查询,后续案例都是如此。

0同样可以不写,但是前面的逗号不可以省略。


案例讲解


先来看看普通的查询,VLOOKUP和组合都可以


1、一般查询


大家比较熟悉的VLOOKUP,不再多介绍,最后一个参数未写,默认是精确

注意逗号不可少!


INDEX+MATCH组合

MATCH找到南中在地区中的位置,然后通过INDEX获取对应位置的值

这里只有一列,所以列可以不写




2、反向查询


这里我们根据经理查询地区,是从右到左查询,使用VLOOKUP需要在内存中调整两列顺序后查询

这里使用组合和普通查询无异,简答很多!


公式:=INDEX(A:A,MATCH(J2,B:B,))




3、区域查询


这里充分利用了INDEX(区域,行,列)

公式:=INDEX($A$1:$E$7,MATCH(G2,B:B,),MATCH(H1,$A$1:$E$1,))



4、多条件查询


如果是多条件,我们可以使用数组公式处理

公式:
=INDEX($A$1:$E$7,MATCH(G2&H2,$A$1:$A$7&$B$1:$B$7,),MATCH(I1,$A$1:$E$1,))

注意数组公式:Ctrl+Shift+Enter结束公式录入,正确录入两遍有{},非手工添加



Excel办公实战,高效办公,每天进步一点点!

关注小编,下次精彩不迷路!

喜欢小编的文章,一定要点赞,关注,转发

您的鼓励是小编最大的动力!

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言