分享

Excel012-Vlookup不为人知的秘密

 L罗乐 2017-05-09

▲本期分享技能请观看



之前有小伙伴问我怎么进行两张表的查询,例如如何在A表中根据某个字段查询B表的相关信息,或者怎么确定A表的内容是否在B表中存在,鉴于很多小伙伴问这个问题,今天就单独来跟大家聊聊这个查询函数Vlookup,它能让您的查询工作事半功倍。



让我们先来了解一下Vlookup函数的结构,四个参数分别如下:


①查谁?就是我要查询的内容是什么。这里可以是数字,文本甚至是单元格引用。


②在哪查?就是我要在什么范围进行查询。查询的范围第一列一定是包含查询内容的。例如我要查询「张三」的身份证号码,那查询的范围第一列一定要是「姓名」这一列。


③返回值列号。例如我要查询「张三」的身份证号码,那查询的范围从「姓名」这一列开始数到「身份证号码」这一列的列数就是返回值的列号。


④怎么查?就是查询的方式,这里我们分为精确查询和模糊查询。



当查询的对象在被查询区域有且只有一个值时可以使用精确查询,查询出该对象所对应的精确值。这里我们用一个员工信息动态查询的案例来看看如何用Vlookup进行精确查询。


员工信息动态查询页面如下:



员工花名册页面如下:



具体演示步骤如下:


1、在员工信息动态查询页面D4单元格使用数据验证制作【姓名】的下拉菜单,具体制作步骤参见Excel004 -多级菜单,就这么简单。


2、在员工信息动态查询页面F4单元格输入公式:=VLOOKUP($D4,员工花名册!$B$:$J$,2,0),我们通过四个参数来分析一下这个公式:


①查谁?查询「马祥君」。

②在哪查?在员工花名册页面的B列到J列查询。

③返回值列号。F4要查询的是员工编号,从B列【姓名】开始数,工号位于第二列,所以返回值列号是2。

④怎么查?因为「马祥君」在员工花名册页面中只有一条信息,所以我们采用精确查询,精确查询参数为0。


3、了解了公式的具体含义,我们分别将【身份证号码】、【部门】、【入职日期】、【联系方式】也用Vlookup函数进行查询即可。只要更换第三个参数「返回值列号」即可。


奉上动态演示:



看了上面的演示您学会了么?这个要多操作才能熟能生巧哦!



学会如何进行精确查询之后我们来看看如何进行模糊查询,当查询的对象包含在被查询区域区间范围时适用此方法。


我们来看看具体的演示案例:如何用Vlookup函数在A表的C列根据B表的等级参考查询出员工考核成绩相对应的等级?



我们可以看到,A 表中要查询的成绩,很多在B表中都不存在,但是A表中的成绩包含在B表的区间范围内,那么我们就能通过模糊查询来查找到对应的等级,切记B表必须按照升序排列。具体方法如下:


在C3单元格输入公式:=VLOOKUP($B3,$F:$G,2,1),我们通过四个参数来分析一下这个公式:


①查谁?查询【考核成绩】「64」。

②在哪查?在B表的F列到G列查询。

③返回值列号。要查询员工等级,从F列【成绩】开始数,【等级】位于第二列,所以返回值列号是2。

④怎么查?因为【考核成绩】「64」在B表中不存在,但包含在>60的范围内,所以我们采用模糊查询,模糊查询参数为1。


奉上动态演示:



是不是很简单,只要改变最后一个参数就能有另外一种用途。



不知道大家有没有发现,不管是精确查询还是模糊查询,Vlookup只能查找到第一条信息,如果说在被查询的表里同一个对象有一条以上的信息,Vlookup不能全部查找出来。这真是Vlookup的一个bug啊,没关系,今天给大家带来了一个自定义函数Vlookups,可以帮助弥补这个缺憾。



我们先来研究一下Vlookups函数的四个参数:


①查谁?和Vlookup一样,不再赘述。

②在哪查?这个范围是指查询对象所在的列。

③查第几个?希望查询相同对象的第几个信息。

④返回值列号。和Vlookup一样,不再赘述。


我们来看看下面的案例:如何把A表中一对多的信息转换成B表中一对一的信息?



具体操作如下:


1、导入自定义函数模块。ALT F11 调出VBA 编辑器 →在工程窗口右击选择【导入文件】→选择VBA 模块文件(自定义函数VLOOKUPS.bas)→关闭VBA 编辑器。


2、在F-I 列添加辅助列写上1,2,3,4,目的是为了写公式的时候引用。


3、在F3单元格输入公式:=vlookups($E3,$A:$A,F$2,2),我们通过四个参数来分析一下这个公式:


①查谁?查询存货编码「B90-A545」。

②在哪查?存货编码位于A表的A列。

③查第几个?我们通过引用上面的F2单元格的值来查询第一个。

④返回值列号?产品系统号位于从存货编号开始数的第二列,所以返回值列号为2。


4、将公式向右填充,即可查询存货编码「B90-A545」的第二个、第三个、第四个产品系统号。


5、将公式向下填充即可查询所有存货编码的所有产品系统号。


6、用连接符将查询出的产品系统号连接起来即可。


奉上动态演示:



记得一定要先导入模块再使用这个函数哦,这个函数是自定义函数,不包含在Excel默认的函数里。



今天的内容就分享到这里,非常感谢大家一直以来对布衣公子的关注和支持!如果您有任何PPT和Excel技能方面的问题,您可以给公子留言,有可能您的问题就会在下一个视频中出现!



    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多