想第一时间收到最新知识,可关注微信公众号:黑米粥的世界。
欢迎加入QQ群:782200398获取案例
昨天给大家分享了VLOOKUP函数的两种基础用法:精确查找与模糊匹配,还没掌握的小伙伴点此回顾:
在使用Vlookup函数时,经常会出现错误值#N/A。那么究竟出现#N/A的原因是什么,我们应该从哪些方面去排查错误呢?接下来给大家深入解析查询过程中出现#N/A错误值的几个原因。
① 查无此人
#N/A 错误通常表示公式找不到要求查找的内容,比如查询D的成绩,但数据源中不存在对象D,故返回#N/A:
这种情况下,为避免错误值影响表格的美观以及后续的计算,可通过Iferror函数,将错误值替换为文字或数值信息:
语法:=IFERROR(表达式,用于替换错误值的内容)
② 数据源引用错误
如果排除了第一个原因依旧返回错误值,这时候你就应该检查一下你的公式啦!
1、检查数据源是否引用正确
如下图:通过姓名查找分数,数据源是从A(序号)列开始选择的,没有满足数据源首列必须包含查找依据这个要求,所以返回#N/A错误值,正确的公式应该是:
=VLOOKUP(E2,B1:C4,2,0)
2、检查数据源是否有绝对引用
如下图,查询姓名C时数据源选择为B2:C4,公式往下复制后,数据源由于相对引用变成了B3:C5,导致A查询不到结果。一般情况下,进行数据查询时是在一个固定不变的范围中,因此需要将数据范围进行绝对引用。
③ 查找值或数据源中包含其他字符
进行查找时,要求查找值与数据源对象内容必须完全一致,因此如果你的查找值或数据源包含空格、非打印字符、超难搞的未知字符,那么肯定会返回#N/A,因此一定要想方设法删掉它们,不同字符删除方法也不一样。
1、存在空格
通过查找与替换,快捷键【Ctrl+H】,查找内容输入空格字符,替换内容保留为空,全部替换即可删除:
2、存在非打印字符
如下图所示,A2与D2名称看起来完全相同,但是VLOOKUP返回#N/A,用Ctrl+H也查找不到任何空格:
此时,可用3种办法判断是否存在非打印字符:
方法1:用=判断
方法2:用Len函数判断长度是否相等
方法3:粘贴至TXT文档,让非打印字符现形
删除非打印字符的方法:CLEAN函数
3、存在未知字符
如下图所示,A2与D2的数字看起来完全相同,但是VLOOKUP返回#N/A,用Ctrl+H也查找不到任何空格,用Len函数判断长度并不相等,但是用Clean函数却依旧无法清除:
这是我遇到的最顽固的字符了,最终是借助Word实现了字符的删除,我们来看一下方法:
1、将A列数据复制粘贴到Word(只粘贴文本);
2、开始-段落-打开显示编辑标记(可以看到数字面前有不认识的字符)
3、按住Alt键拖动鼠标垂直选择右侧数字内容(这个字符不能用查找替换删除)
4、Ctrl+C复制选择好的数字,粘贴到Excel中,此时,公式已返回正确结果
④ 数据类型不匹配
进行查找时,要求查找值与数据源对象数据类型必须完全一致,如果查找值是文本类型,数据源是数字类型,也会导致VLOOKUP函数查找出错,这时只需要将数据类型修改为一致即可:
以上是查询过程中#N/A出现的原因及解决办法,以后大家出现这种错误就可以从这几个方面进行排查了:
是否查无此人
数据源是否引用出错
数据源是否绝对引用
存在空格、非打印字符、其他字符
数据类型不匹配
好记性不如烂笔头,赶紧练一下~