如何在交叉查询中使用VLOOKUP?看完就懂!
作者:阿硕来源:部落窝教育发布时间:2021-04-25 09:19:20点击:3727
编按:
VLOOKUP作为查询界天王一样的存在,在每一个EXCELER的心中都有举足轻重的份量。而要学会如何使用VLOOKUP,首先我们一定要理解它,然后在一个具体的二维交叉表中应用它。比如,小E下面要和大家讲的例子。看完以后,相信大家都能轻松了解和掌握VLOOKUP的基本套路……
有小伙伴问了这样一个问题:我们公司生产多种产品,在不同的城市销售,每一种产品在不同的城市中销售价格是不一样的。产品的报价表是一个行列交叉的二维区域,请问如何在这个二维交叉表中匹配出不同产品在不同城市中的销售价格?
第一步:分析数据情况
这个小伙伴所在的公司一共生产四种产品,分别为产品A、产品B、产品C、产品D。这四种产品同时在北京、上海、广州、天津这四个城市销售,但是在不同的城市中,销售价格不尽相同。具体的报价表是下图中的E1:I5区域,其中,行字段代表的是城市,列字段代表的是产品,F2:I5区域中的数据是产品的销售价格。
在本例中,查询条件有两个,分别是城市和产品,要查询的字段为销售价格。因此,大家可以把它理解成一个双条件查询问题。
观察一下两个字段:
产品这一字段,在二维报价表中是保存在同一列(E列)的不同行,是纵向的;而城市这一字段,在二维报价表中是保存在同一行(第1行)的不同列,是横向的。
第二步:思考函数建构
函数建构:
①熟悉VLOOKUP函数的小伙伴一定知道,它的功能是纵向查找,就是对同一列不同行中的数据进行查找,所以,产品这一字段可以用来作为VLOOKUP函数的第一参数。
②因为产品在二维报价表中保存在E列,销售价格保存在F列至I列,根据VLOOKUP函数的使用原理,查询区域应为E:I。
③VLOOKUP函数的第四参数,一般为0,代表精确查找。所以,在本例中,第四参数即设置为0。
此时,已经大致可以勾勒出一个VLOOKUP函数了:
=VLOOKUP(B2,E:I,?,0)
现在,问题的关键只在于如何设置VLOOKUP函数的第三参数。那么,第三参数应该是什么样的?
第三步:第三参数的分析
如果查询的城市是北京,它在E:I区域中处于第2列;如果查询的城市是上海,它在E:I区域中处于第3列;如果查询的城市是广州,它在E:I区域中处于第4列;如果第一个查询条件是天津,它在E:I区域中处于第5列。那么,在Excel中,该如何得到2、3、4、5呢?
这个时候,大家就需要请出VLOOKU函数的最佳搭档——MATCH函数了。
MATCH函数的作用是在某一个区域中,找出查找值所在的位置。MATCH函数的语法是:=MATCH(lookup_value,lookup_array,[MATCH_type])。小伙伴们可以在咱们公众号中搜索一下“MATCH”,就可以找到很多有关它的文章哦!
大家可以看到,城市字段在二维报价表中是保存在F1:I1区域的。分析可知:对于产品A,要查询的城市是北京,对应的是F1:I1区域中的第1列,应返回1;对于产品B,要查询的城市是上海,对应的是F1:I1区域中的第2列,应返回2;对于产品C,要查询的城市是广州,对应的是F1:I1区域中的第3列,应返回3;对于产品D,要查询的城市是天津,对应的是F1:I1区域中的第4列,应返回4。
因此,把D列作为辅助列,在D2中输入“=MATCH(A2,$F$1:$I$1,0)”,然后向下复制填充公式,得出的值就是1、2、3、4了。
注意:城市字段在A列中是纵向排列的,而在F1:I1区域中是横向排列的,这说明MATCH函数不受行列方向的限制。
接下来,为了得到2、3、4、5,要在MATCH公式的值上加1。最后,在C2中输入“=VLOOKUP(B2,E:I,MATCH(A2,$F$1:$I$1,0)+1,0)”,然后向下复制填充公式,就可以得到预期效果啦!如下图所示。
总结:
小伙伴们,一定要厘清本题的思路哦!VLOOKUP函数的查询对象是产品,查询区域是E:I区域;MATCH函数的查询对象是城市,查询区域是F1:I1,MATCH函数是作为VLOOKUP函数的第三参数来参与运算的。你GET到了吗?
另外,把C2中的函数公式写成“=VLOOKUP(B2,E:I,MATCH(A2,$E$1:$I$1,0),0)”,也是OK的。快来思考一下其中的逻辑吧!
本文配套的练习课件请加入QQ群:902294808下载。
做Excel高手,快速提升工作效率,部落窝教育《一周Excel直通车》视频和《Excel极速贯通班》直播课全心为你!
扫下方二维码关注公众号,可随时随地学习Excel:
相关推荐:
查询界黑马——MAX,竟让查询之王VLOOKUP也甘拜下风?
版权申明:
本文作者阿硕;同时部落窝教育享有专有使用权。若需转载请联系部落窝教育。