![2f876e10237fa97f8ce484ea4fd00be9.png](https://i-blog.csdnimg.cn/blog_migrate/e3638614f3ebf03511965667ec569056.jpeg)
查询引用,是常用功能之一,经常使用的函数就是Vlookup,其实,除了Vlookup函数之外,还有Lookup、Index+Match等函数或组合都可以完成查询任务。
一、Vlookup函数。
作用:搜索指定单元格区域的第一列,然后返回该区域相同行上指定列的值。
语法结构:
=Vlookup(查找值,查找范围,返回值的列数,匹配模式)。也可以理解为:=Vlookup(找什么,在哪里找,返回范围中相对于第几列的值,精准查找还是模式查找)。
1、单条件查找。
目的:查询销售员对应的销量。
![013cbce1778b3fb26ba5dbe10d8fd28c.gif](https://i-blog.csdnimg.cn/blog_migrate/765e2869338330261b31c8af154248a5.gif)
方法:
在目标单元格中输入公式:=VLOOKUP(H3,B3:D9,3,0)。
解读:
H3为查找的值,B3:D9为查找范围;因为要返回的是销量,而在B3:D9范围中,销量在D列,也就是第3列,所以第三个参数为3,第四个参数“0”为精准查询的意思,如果要模糊查询,可以用代码:1。
2、多条件查询。
目的:查询销售员在相应地区的销量。
![1afbe70687dea8dddc32c0c71a37f2ea.gif](https://i-blog.csdnimg.cn/blog_migrate/1218078381182e797244c8c81afb49b7.gif)
方法:
在目标单元格中输入公式:=VLOOKUP(H3&I3,IF({1,0},B$3:B$9&E$3:E$9,D$3:D$9),2,0)。
解读:
公式中 IF({1,0},B$3:B$9&E$3:E$9,D$3:D$9)的作用是在后台重新组成形成新的数据范围,暨H列和I列组合成1列。
3、多列查询。
目的:返回销售员的所有信息。
![3fb5a0d7e4b426ea977bc33343626e5a.gif](https://i-blog.csdnimg.cn/blog_migrate/2550d10b8aac3b26d42718dc6f10a6fb.gif)
方法:
在目标单元格中输入公式:=VLOOKUP($B$13,$B$3:$E$9,COLUMN(C3)-1,0)。
解读:
多列查询的关键在返回列的相对位置,而Column函数正好可以返回当前单元格所在的列数,如果在用修正值加以修正,从而达到返回值列数的目的。
4、从右向左查询。
![3c2fa61e0b63f992b2d69b55a202272d.gif](https://i-blog.csdnimg.cn/blog_migrate/3a8beb46884bbb9cd12a909a4223ad57.gif)
方法:
在目标单元格中输入公式:=VLOOKUP(H3,IF({1,0},D3:D9,B3:B9),2,0)。
解读:
公式中IF({1,0},D3:D9,B3:B9)的作用是调换D列和B列的位置,形成新的数据范围。
5、划分区间等级。
![2349046af43bd2f13daa41b378b32fc0.gif](https://i-blog.csdnimg.cn/blog_migrate/e4464187108446fb820edcde086519be.gif)
方法:
在目标单元格中输入公式:=VLOOKUP(D3,H$3:I$7,2)。
解读:
Vlookup函数的特点是当查找值在查找范围中无法精准匹配时(模糊查询),返回小于当前查询值的最大值对应的结果。例如:查询56时,查询列表中并没有56,小于56单最大的值为0,所以返回的结果为“不及格"。
6、使用通配符查询。
![9461303de81ad8acfa32293baf380db0.gif](https://i-blog.csdnimg.cn/blog_migrate/2f21fd2ec5edeff15bc7638ca15ed92c.gif)
方法:
在目标单元格中输入公式:=VLOOKUP(H3,B3:D9,3,0)。
解读:
Excel中的通配符有两个,一个是:“*”(星号);另一个是“?”(问号);其中*可以匹配任意长度的字符,而?仅能匹配一个字符。
二、Lookup函数。
Lookup函数具有两种使用形式。
1、向量形式。
功能:是指在单行或单列中查询指定的值,然后返回第二个单行或单列相同位置的值。
语法结构:=Lookup(查找值,查找值所在的范围,返回值所在的范围)。
前提条件:查找值所在范围的值必须按照升序排序,否则无法得到正确的结果。
目的:查询销售员的销量。
![7859f3d2fec8ad9b963559404f1eb8d1.gif](https://i-blog.csdnimg.cn/blog_migrate/bac16691e61ac7a7fe2106a9c143647f.gif)
方法:
1、以“销售员”为主要关键字进行“升序”排序。
2、在目标单元格中输入公式:=LOOKUP(H3,B3:B9,D3:D9)。
解读:
1、由于Lookup函数本身的特点,在查询数据前,首先要对查询值所在范围按照升序进行排序,否则无法得到正确的结果哦!
2、当查找值所在范围和返回值所在范围相同时,返回值范围可以省略哦!
2、数组形式。
作用:在对应数据源中的第一列或第一行中查找值,并返回最后一类或最后一行对应的值。
语法结构:=Lookup(查找值,查找值和返回值所在的范围)。
前提条件:查找值所在范围的值必须按照升序排序,否则无法得到正确的结果。
目的:查询销售员的销量。
![600729988620a92f11750a00e994685d.gif](https://i-blog.csdnimg.cn/blog_migrate/b7dac521900f23852e1ee2556d27a707.gif)
方法:
1、以“销售员”为主要关键字“升序”排序。
2、在目标单元格中输入公式:=LOOKUP(H3,B3:D9)。
解读:
1、由于Lookup函数本身的特点,在查询数据前,首先要对查询值所在范围按照升序进行排序,否则无法得到正确的结果哦!
2、使用数组形式查询时,查找的值必须在第一列,返回的值必须在最后一列哦!
3、单条件查询。
在实际的数据中,数据源不可能按照查找值所在的范围进行升序排序,为了解决这一难题,Lookup衍生除了其“变异”用法。
目的:查询销售员对应的销量。
![ae05ff16b603475af6d071c26f7d56ea.gif](https://i-blog.csdnimg.cn/blog_migrate/5e874af8ec9459742e57b96449f74fe5.gif)
方法:
在目标单元格中输入公式:=LOOKUP(1,0/(B3:B9=H3),D3:D9)。
解读:
1、在学习Lookup函数的基础语法时,已经讲解过,要想得到正确的结果,对查找值所在范围的值必须进行升序排序,但在“单条件”查询时,并未对条件值所在范围的值进行升序排序,而是采用了奇怪的公式:查找值1,查询范围为:0/(B3:B9=H3)。这是为什么呢?
2、Lookup函数的特点:当在查询范围中找不到查询值时,Lookup函数就会进行匹配工作,原则是以小于查询值的最大值替代查询值。
3、当B3:B9=H3成立时,返回True,暨:1,不成立时返回False,及0。而0/0则返回错误,所以查找范围就变成一个以0和错误值组成的新数组,Lookup进行向下最大值匹配,从而返回0对应位置上的值。
4、多条件查询。
目的:查询销售员在相应地区的销量。
![7255b7ea0dcc6465e418d2fcbe43d464.gif](https://i-blog.csdnimg.cn/blog_migrate/000290b31dc2d112d9695575a2721e22.gif)
方法:
在目标单元格中输入公式:=LOOKUP(1,0/((B3:B9=H3)*(E3:E9=I3)),D3:D9)。
解读:
其实多条件查询和单条件查询的原理是相同的,当两个或多个条件都成立时,返回True,暨1;否则返回False,暨0。
三、Index+Match组合法。
1、单列查询。
目的:返回销售员对应的销量。
![26533d8b23e2889c4ae5c2f42424a9a9.gif](https://i-blog.csdnimg.cn/blog_migrate/cd9677dbfe7ef62eb2800009ba2de0ec.gif)
方法:
在目标单元格中输入公式:=INDEX(D3:D9,MATCH(H3,B3:B9,0))。
解读:
1、Index函数的作用为:返回给定的单元格区域中,行列交叉处的值或引用。语法结构:=Index(范围,行,[列])
2、Match函数的作用为:返回指定的值在指定范围中的相对位置。语法结构:=Match(定位置,定位的范围,匹配模式),其中“1”为:小于;“0”为:精准;“-1”为:大于。
2、多列查询。
目的:返回销售员对应的所有信息。
![41ea5e38a56ae35a4246cf9214bd30e9.gif](https://i-blog.csdnimg.cn/blog_migrate/a80c7143824c0ef850dfc94cebe2ca9f.gif)
方法:
在目标单元格中输入公式:=INDEX($B$3:$E$9,MATCH($B$13,$B$3:$B$9,0),MATCH(C$12,$C$12:E$12,0)+1)。
解读:
利用Match函数定位出当前值所在的行和列,然后用Index提取值。
结束语:
本文主要介绍了常见的三类查询引用技巧,Vlookup、Lookup及Index+Match,对于实用技巧,你Get到了吗?
如果亲有更好的查询引用办法,不妨告诉小编会在留言区留言讨论哦!
亲的支持是小编不断前进的动力哦!自己学习的同时别忘了“点赞评”哦。