VLOOKUP又出错?假装自己不心慌
小伙伴们好啊,VLOOKUP想必大家都会用,你有没有遇到VLOOKUP发脾气的时候呢?
今天咱们就来说说VLOOKUP函数出错的常见原因:
1、单元格里有空格
如下图中,G2单元格里的公式写法没问题,引用方式也没问题,这时候咱们要先检查被查询的内容里有没有空格,或者查询区域的单元格里有空格。
解决方法是按Ctrl+H键调出【查找和替换】对话框,在【查找内容】文本框中输入空格,点【全部替换】按钮。
实际操作时,可以在英文输入状态下输入空格,全部替换,然后再在中文输入状态下输入空格,继续替换一次。
2、不可见字符
如果是从系统导出的数据源,还有可能存在不可见字符。
解决方法是单击可能包含不可见字符的列标,在【数据】选项卡下点【分列】按钮,然后在弹出的对话框中直接点【完成】按钮。
这种方法能清除大部分类型的不可见字符。
3、查询区域选择错误
如下图所示,要在G2单元格查询商品名称对应的单价,但是下面的公式竟然出错了:
=VLOOKUP(F2,$A$2:$D$14,3,FALSE)
这是因为VLOOKUP函数要求查询值必须位于查询区域的首列,在左侧的数据表中,商品名称在B列,所以查询区域要从B列开始选取。
但是公式写成了从A列开始,那就不能怪VLOOKUP了
4、漏掉了第四参数
第四参数用于指定使用哪种匹配方式,如果省略参数值,或者将参数值写成0,作用和使用FALSE一样的,都是精确匹配。
但是如果省略了参数值,逗号又给漏掉,那就别怪VLOOKUP不客气了。
就像下图,G4单元格的公式直接返回一个错误结果,你说这有多坑人:
5、数字格式不一致
这种问题主要出现在数字类型的查询中,看看下图E2单元格中的公式,要根据D2单元格编码查询对应的单价:
=VLOOKUP(D2,A:B,2,0)
D列的编码是文本型的数字,而A列查询区域的编码是常规格式的数值,所以在查询时就有问题了。
解决方法是把查询区域的格式和被查询的内容统一成同一种格式。
可以修改公式,将查询值乘以1变成数值,再进行查询就没问题了:
=VLOOKUP(D2*1,A:B,2,0)
反之,如果想把数值型的查询值变成文本,只要在查询值后连接上一个空文本&''就好了,类似下面这样:
=VLOOKUP(D2&'',A:B,2,0)
还有一种可能出现问题的原因,就是查询内容中包含“*”或是“~”,这两个符号有特殊身份,在查询条件中出现时,会被Excel当成通配符处理。
简单有效的处理方法是将数据源以及查询内容中的“*”和“~”使用其他符号来替代,这个问题在实际工作中不多见,咱们知道有这么回事就可以啦。
好了,今天咱们的分享就是这么多,祝大家一天好心情!
图文制作:祝洪忠