在Execl函数中,有那么一个万金油函数,它既可以正向查找、逆向查找,还可以多条件查找、模糊查找、结合通配符查找,它就是Execl明星级函数vlookup。不论你从事会计、审计、银行、券商,还是人事、行政、销售,只要与数据打交道,vlookup都是当之无愧的使用最频繁的函数之一。=vlookup(查找值,查找区域,返回列,精确查找or模糊查找)准确或模糊:精准查找时,查找值与查找区域内单元格完全匹配,用0表示;模糊查找时,查找值与查找区域内单元格近视匹配,用1表示=vlookup(查找值,查找区域,返回列数,0)其中,科目代码选定【D2】单元格;查找区域为A、B两列,为保证A、B两列位置固定不变,可加上绝对引用;返回列数为相对概念,所选择的查找区域为A、B两列,我们需要的返回结果为【B】列,则返回列数=2(相对第二列) 

2、逆向查找 vlookup正向查找只能从首列开始查找,返回表格中首列右侧的内容,不能逆向查找及返回。vlookup逆向查找需要嵌入新的函数和数组。 表达式: =vlookup(查找值,IF({1,0},查找值所在列,结果值所在列),2,0) 逆向查找本质上通过IF函数构造新的查找区域。 因为有数组输入后,需要同时按ctrl+shift+enter得:
={vlookup(查找值,IF({1,0},查找值所在列,结果值所在列),2,0)}。 {1,0}为一个数组,数值1对应查找值所在列,数值0对应结果值所在列,通过构造数组区域使查找值与结构值在数组内位置调换,实现逆向查找。
 vlookup多重条件查找为单个条件查询的一种扩展,同时需要利用到IF函数和数组函数。=vlookup(查找值1&查找值2,IF({1,0},查找值1所在列&查找值2所在列,结果所在列),2,0) 同理,通过IF函数构造新的查找区域。 因为有数组输入后,需要同时按ctrl+shift+enter得:
={vlookup(查找值1&查找值2,IF({1,0},查找值1所在列&查找值2所在列,结果所在列),2,0)} 例子:查询北京市南京中路的房价,由于各变量不唯一,需使用多重条件查找。


4、通配符的结合使用 实际工作中,存在查找值与查找区域内单元格值不完全匹配的情况,如下表所示,查找值与查找区域内【客户】为包含关系,此时需要用到通配符。=vlookup('*'&D3&'*',$A:$B,2,0)
 模糊查找会沿着vlookup函数的逻辑进行模糊查找,找到小于或等于查找值的最大值作为查询的结果。简单点说,编号1的员工销售金额为145000元,其对应的模糊查找值为100000元(小于或等于查找值的最大值)。
 看到这里,你已基本掌握明星函数vlookup的查找方式了,下面我们来谈谈使用vlookup的常见错误吧。
1、未添加绝对引用 如果未添加绝对引用符号,由于单元格之间相对引用的关系,下拉单元格可能导致查找值未包含在查找区域内,vlookup输出结果错误。例子:在下表中F2单元格内输入vlookup函数:下拉F列单元格,发现科目代码为【1002】和【1122】的科目名称出现错误,这是因为由于未添加绝对引用,下拉单元格时,【1002】和【1122】的科目代码未包含在查找区域内,所以导致vlookup输出结果错误。

2、未区分文本型数值与数值 下表显示,查找值科目代码虽然与查找区域内科目代码文字一致,但一个为文本格式,一个为数值格式,不能完全匹配,vlookup查找结果显示错误。解决方法:使查找值与查找区域内被查找内容格式一致。例如,对查找值【科目代码】添加【&''】转换为文本格式,即可输出查找结果。
 下表vlookup的输出结果有两处错误,这是因为科目代码【1003】和【1125】单元格字符的左边和右边分别存在一个空格,肉眼不可见,使得查找值与查找区域内的被查找内容不完全相同,从而查找结果错误。解决方法:通过【查找替换】方式,在【查找内容】处输入空格,【替换为】不输入任何内容,点击【全部替换】,清除单元格内所有空格键。
 vlookup函数要求查找区域第一列必须为【查找区域】,如果第一列不为查找区域,那么输出结果为错误。

来源:相逢未必偶然。(如有转载,请注明以上信息)。
|