excel中vlookup函数经常引用错误,让我告诉你原因,迅速脱离误区
- 2021-10-31
- 来源/作者: 菜鸟图库/ 菜鸟图库
- 1673 次浏览
为什么我的vlookup所有参数都按要求输入正确,结果却还是错误。
一、第二参数没有 绝对引用,数据区域会偏移,导致数据区域错误。
i2 单元格是VLOOKUP(H2,B2:F8,5,0),到 i5 单元 格变成了VLOOKUP(H5,B5:F11,5,0),数据 区域从B2:F8变成了B5:F11,导致数据错误。
图1:没有绝对引用,错误案例
i2 单元格的正确函数写法应该是=VLOOKUP(H2,$B$2:$F$8,5,0),加上$这个符号表示已经绝对引 用,数据区域被锁定在这块范围,不会发生偏移。鼠标选中B2:F8数字后按快捷键F4可以切换到绝 对引用。
图2:数据区域加了绝对引用,结果显示正确
二、数据区域的绝对引用也加了,为什么还错了,可能是第三参数的第几列写错了。
i3 单元格输入=VLOOKUP(H3,$B$3:$F$9,4,0),第三参数应该写5,不应该写4因为D列被隐藏 了,表面看只有4列,其实隐藏列也被包含在内,所以籍贯列是排在第5列。
图3:数据区域有隐藏列,也要算列数,错误案例
i3单元格函数正确写法=VLOOKUP(H3,$B$3:$F$9,5,0)
图4:第3参数要算上隐藏列,正确案例
三、要会区分文本型数值和数字型数值,表面数字虽然一样,其实类型不同。
H4单元格的0367是属于文本型数值,A4单元格的0367属于数字型数值,函数公式会把它们当做 两个不一样的内容,所以无法匹配。H6单元格同理。
图5:不区分文本型数值和数字型数值,导致结果错误,错误案例
在 i2单元格里输入=VLOOKUP(H2*1,$A$2:$B$8,2,0),H2*1的意思是H2单元格的数字乘以1,这 样文本型数值也会变成数字型数值。
图6:正确案例
四、数据区域的首列不能出现重复值,不然引用结果会不准确。
A3和A7都是数字1276,A3对应小张,A7对应小白。H7和H8都是1276,引用结果都是小张。 当首列出现重复值时,引用结果只能出现一个,这是VLOOKUP的查找唯一性。
图7:错误案例
五、省略函数第4个参数导致结果错误。
第4个参数的TRUE是模糊查找,用1表示;FALSE是精确查找,用0表示;这个参数不能省略,如果省略默认为1,但是我们匹配数据都要精确查找,输入0。
图8:省略第4个参数,错误案例
六、查找值存在空格也会导致结果错误。
H4小张和H6小丁前面有空单元格,B列的姓名都是没有空格的,所以无法识别。要删除空格后再 用函数。
图9:带空格和不带空格是属于不同的内容,错误案例
七、查找值的内容不在区域首列也是会导致结果错误的。
数据区域A列工号排在B列姓名的前面时,想用“姓名”去匹配“工号”是不行的。
图10:错误案例
这种情况要想引用成功,第一种方法是在姓名的后面添加一列,把工号列的内容复制过去; 第二种方法是利用 if的逆向查找功能, 在 i2单元格里输入 =VLOOKUP(H2,IF({1,0},$B$2:$B$8,$A$2:$A$8),2,0),最后按CTRL+Shift+回 车,因为这时是数组函数。
最后引用结果 i2 和 i5是3位数,前面的0没有了,鼠标右键设置单元格格式。
图11:配合 if 函数的逆向查找功能,正确案例
标签(TAG) vlookup函数