前面已经介绍了前5个容易出错的原因:

Excel中的Vlookup函数老出错?这十个原因了解一下吧(上)

今天分享后5个容易出错的原因

6、查找值是数字型数字,数据源是文本型数字

输入的公式是:

=VLOOKUP(A11,A1:B8,2,0)


因为查找的编号1,是数值型的数字,而数据源区域内是文本型的,所以匹配出错,对于文本型的数字,Excel在单元格的左上角,会给一个绿三角的标志


正确的公式是:

=VLOOKUP(TEXT(A11,0),A1:B8,2,0)

我们将A11的数据换成文本型的,用公式:TEXT(A11,0)转换成文本


7、数据中有空格或不可见字符

输入的公式是:

=VLOOKUP(A11,B1:C8,2,0)

看起来结果不应该出错,公式也是对的,这个情况下,是因为表格中存在的空格,或者不可见的字符引起的


我们可以使用LEN()函数来进行检察,数据源区域内的字符个数是4个,而查找区域内的值是3个


所以数据源区域内存在空格,或不可见字符

处理空格:我们只需要按CTRL+H调出查找替换,然后就里面的空格去除掉即可

查找内容是一个空格,替换为里面什么都不需要输入,如下所示:


处理不可见字符:有些时候通过这个方法不能得到正确的结果,我们就需要对数据源进行clean()函数清洗,把清洗完的H列数据,复制,粘贴至B列,保存为数值


就可以得到正确的结果了,它们的len()函数字符长度肯定是保持统一的。


8、不能逆向查找

输入的 公式是:

=VLOOKUP(A11,A1:B8,-2,0)

VLOOKUP函数只能从左向右边查找,不能左右查找


这个时候简单的办法,就是把英雄列剪切,放至编号列的左边去,然后再使用查找匹配

=VLOOKUP(A11,A1:B8,2,0)


9、通配符查找匹配

输入的公式是:

=VLOOKUP(A11,A1:B8,2,0)

因为查找的值里面有通配符号星号*,这个代表任意字符,所以VLOOKUP查找到了10*1,也属于1*1的内容,所以返回的值错误


通过配有3个,*,~,?,当我们要查通配符的时候,需要换成它本身的表达方式


所以输入的公式是:

=VLOOKUP(SUBSTITUTE(A11,"*","~*"),A1:B8,2,0)

用SUBSTITUTE(A11,"*","~*"),将*号换成了~*,再进行查找匹配


10、通过简称查找全称

输入的公式是:

=VLOOKUP(A11,B1:E8,4,0)

查找的值是悟空,但数据源里面是孙悟空,这种情况是查找不出来的


需要加上通配符进行查找匹配,正确的公式是:

=VLOOKUP("*"&A11&"*",B1:E8,4,0)


关于VLOOKUP函数常常会出的错误,你学会了么?欢迎留言讨论~