为什么vlookup函数没问题,却匹配不出来数据
发布网友
发布时间:2022-04-23 07:27
我来回答
共2个回答
热心网友
时间:2022-04-28 22:01
在使用VLOOKUP函数公式的时候,公式输入的没有问题,明明原始数据里面有的,却没有查找匹配到,今天我们来列举工作中经常出现的这几种场景
1、非打印字符
有时候公式没有错误,然后查找替换空格,发现没有空格
这种情况,大概率是从公司软件里面导出数据,里面的非打印字符的原因,那我们可以使用clean()函数对查找值,以及查找列进行数据清洗
在一空白列,我们输入公式=clean(b2),对B列数据进行清选
然后将H列复制,选择性粘贴为值,放在B列中,输入的公式是:
=VLOOKUP(E2,B:C,2,0)
如果上述公式还没有得出结果,那么对E列的查找值也可以进行clean()函数清洗一次,或者使用公式:
=VLOOKUP(CLEAN(E2),B:C,2,0)
就能得到结果了。
2、空格的存在
例如,我们现在根据员工姓名查找工资数据,使用公式:
=VLOOKUP(E2,B:C,2,0)
左边有的数据,右边还是没有得到结果
员工名字看起来一样,实际上有可能是因为空格造成的,我们可以在表格里面按快捷键CTRL+H,调出查找替换,在查找的内容里面输入一个空格,然后点击查找全部,来看有没有空格的存在
当我们发现空格后,只需要选择全部替换就可以把空格全部去除,得到正确的结果
3、格式错误
左边是员工信息表,右边是想通过员工编号,查找匹配出对应的员工姓名,使用的公式
=VLOOKUP(E2,A:C,3,0)没有问题
查找结果全错了,但左边原始表格里面明明是有数据的
这种对于数字的查找,大多数情况是因为数字的格式不一样导致的,数字有分数值型和文本型两种,如果格式不一样,vlookup是没办法进行查找的
那么我们必须做到查找值和查找列的数字格式是一致的,我们可以将文本型数字转换成数值型的,选中文本型数字,在*感叹号下,点击转换成数字
所以我们必须保持查找值和源数据的查找列格式保持一致
关于今天的技巧,你学会了么?下次再碰到明明有数据,却查找不到的时候,按步骤检查一下吧~
热心网友
时间:2022-04-28 23:19
这是由于提问中两个表格的A列的数字格式是不一样的,一个是数值格式的数字,一个是文本格式的数字。只要把两列的格式设置为一样,因为都是数字,建议都设置为数值格式那么原来提问的公式就可以用了。
如不想改格式的,也可以把公式改为这样就能用了:
=IF(A2="","",TEXT(VLOOKUP(--A:A,Sheet1!A:B,2,),"e年m月d日"))
如果有些数据可能在Sheet1的A列中是没有的,可以加入防错判断,遇上这情况时,公式返回空白,以上公式返回的是#N/A错误值。
=IF(COUNTIF(Sheet1!A:A,A2),TEXT(VLOOKUP(--A:A,Sheet1!A:B,2,),"e年m月d日"),"")