VLOOKUP是最基本也是最常用的查找函数,但我们在使用中都会遇到#N/A错误的问题,这个错误的原因是什么,又该如何解决并避免再次出现这种错误。
本文将讲解VLOOKUP函数中出现#N/A错误的原因并提供实用的解决方法,助你更好地运用函数进行数据分析。
1
查找区域不存在查找值
VLOOKUP函数出现#N/A错误的第一个原因就是查找区域不存在查找值。
例如,有一张包含了“序号”、“商品名称”、“单价”和“数量”的表格。
可以发现表格在查询数据“电脑”的数量时出现了#N/A错误,这是因为数据源并不存在“电脑”。

如果要避免影响后续的计算,可以利用IFERROR函数将错误值替换为其他信息比如文字。
把G4单元格的公式改为:
=IFERROR(VLOOKUP(F4,B4:D8,3,FALSE),"未找到")

这样G4的错误值就会显示“未找到”。
2
数据源引用错误
VLOOKUP函数出现#N/A错误的第二个原因就是数据源引用错误。
例如,有一张包含了“序号”、“商品名称”、“单价”和“数量”的表格。
可以发现表格在查询数据“桌子”的数量时出现了#N/A错误,这是因为数据源引用在“序号”列。

这时候只需要把数据源区域调整一下,更正为B2:D6。

这样返回的查找值就能正确显示了。

3
数据源相对引用错误
VLOOKUP函数出现#N/A错误的第三个原因就是数据源没有被绝对引用。
例如,我们通过VLOOKUP函数找到了桌子的数量,但在往下拉时发现G4出现了错误值。
点开单元格的公式就可以明显看到,G4引用的数据源已经脱离了查找值在数据源的位置,所以导致公式无法找到查找值而返回#N/A。

只需要在数据范围进行绝对引用,再利用填充柄重新往下拉更新公式就可以解决了。

4
数据类型不匹配
VLOOKUP函数出现#N/A错误的第四个原因就是数据类型不匹配。
例如,这张表格中返回错误值的G2单元格,经过检查发现公式的查找值和数据源都引用正确。
最后在数据源的单元格发现了它的数值是文本格式,而我们查找值序号是数值格式。

只需要把数据源的文本格式序号改为数值形式即可解决问题。

5
逆向查找
VLOOKUP函数出现#N/A错误的第五个原因就是进行了逆向查找。
例如,在这张表格中G2和G3单元格出现错误是因为要查找的“序号”是在“商品名称”的前面,公式无法进行查询。

如果需要逆向查询,可以用VLOOKUP和CHOOSE函数结合实现。
把G2单元格的公式改为:
=VLOOKUP(F2,CHOOSE({1,2},$B$2:$B$6,$A$2:$A$6),2,0)

按下回车键就可以看到G2返回了正确的查找值,再利用填充柄把G3单元格的公式更新即可。