龙空技术网

VLOOKUP函数,为何你总是出错?

学点EXCEL不加班 586

前言:

如今朋友们对“vlookup函数无效引用不能位于256列”大体比较关心,你们都想要了解一些“vlookup函数无效引用不能位于256列”的相关资讯。那么小编同时在网摘上网罗了一些对于“vlookup函数无效引用不能位于256列””的相关资讯,希望咱们能喜欢,朋友们快快来了解一下吧!

原创作者: 卢子 转自:Excel不加班

用VLOOKUP函数进行查找,出错的原因有很多种。今天,卢子来一次全面讲解。

1.用法错误

根据左边的销售明细表查询年终奖的3种最常用错误用法,还有1个反向查找案例。

01 区域没锁定,特别是新手,经常犯这种错误。

=VLOOKUP(F2,A1:D9,4,0)

下拉的时候就变成了区域就自动改变,从而出错。

锁定区域,需要加美元,美元给了区域就固定不变。在中国用人民币(¥)好使,在微软的世界里,用美元($)才好使。

正确用法:

=VLOOKUP(F2,$A$1:$D$9,4,0)

02 选定的区域,首列没有包含查询值。

=VLOOKUP(F8,$A$1:$D$9,4,0)

正确的用法,区域需要从包含销售员这一列开始,记住,查询是根据这一列进行首列查询。

=VLOOKUP(F8,$B$1:$D$9,3,0)

03 第3参数返回的列超出区域。

=VLOOKUP(F13,$B$1:$D$9,4,0)

B到D才3列,你居然要返回第4列的值,肯定给你报错。

正确的用法:

=VLOOKUP(F13,$B$1:$D$9,3,0)

04 反向查找

=VLOOKUP(F2,$A$2:$B$9,1,0)

默认情况下,VLOOKUP函数是不支持反向查找的,需要结合IF函数才可以。

=VLOOKUP(F2,IF({1,0},$B$2:$B$9,$A$2:$A$9),2,0)

一般反向查找,用LOOKUP函数会更简单。

=LOOKUP(1,0/(F2=$B$2:$B$9),$A$2:$A$9)

2.查无对应值

查无对应值又分成2种情况,一种是本身就不存在,一种是格式不同。

01 本身就不存在

卢子这个不在明细表里面,所以返回错误,针对这种情况,可以嵌套一个容错函数IFERROR。

=IFERROR(VLOOKUP(F2,$B$1:$D$9,3,0),"")

02 而格式不同又分成2种,数值格式查找文本格式和文本格式查找数值格式。

1)数值工号查找文本工号

数值转变成文本,可以通过&""来实现。

=VLOOKUP(F2&"",$A$1:$D$9,4,0)

2)文本工号查找数值工号

文本转变成数值,可以通过--来实现,负负得正,通过运算文本就变成数值。

3.内容不完全一样

01 含有隐藏字符

销售明细表是带绿帽子的订单编号,支付宝是没有绿帽子的订单编号,如何进行查找对应值?

带绿帽子的订单编号

没有绿帽子的订单编号

在E17单元格输入公式,下拉。

=VLOOKUP(TRIM(CLEAN(A17)),销售!A:G,2,0)

带绿帽子就是文本格式,而没有带绿帽子可能是含有隐藏字符或者空格,也就是说两个表格式不一样。格式不一样,是不能直接查找,需要转换成一样才可以。

去除隐藏字符可以用CLEAN函数,去除前后的空格可以用TRIM函数,两个都加比较保险。

02 根据简称查找全称

直接用VLOOKUP函数的模糊查找,根据简称查找全称出错了。

这种需要结合通配符才可以。

=VLOOKUP("*"&A2&"*",F:G,2,0)

这里说明一下,简称可不能乱取,要不然Excel也识别不了。举个例子,我全名叫陈锡卢,但很多人都叫我卢子,根据卢子是没办法找到陈锡卢,会返回错误值。

=VLOOKUP("*"&A1&"*",D:E,2,0)

4.格式不同的工作簿查找

跨工作簿查找,提示公式只能引用256列或65536行的工作表的单元格,怎么回事?

一个工作簿为xlsx格式,一个工作簿为xls格式,两种不同格式,不能引用整列。

有两种解决方法:

01 将xls格式的工作簿另存为xlsx格式,这样就可以引用整列。

02 直接引用部分区域,也可以解决。

=VLOOKUP(G2,'[VLOOKUP函数,其实也没什么了不起!.xlsx]Sheet5'!$A$2:$B$9,2,0)

最后一种,就是标点符号没有用英文状态,函数名称写错,这个自己多留意,就不做说明。

标签: #vlookup函数无效引用不能位于256列 #vlookup无效引用不能位于256列怎么办 #vlookup无效引用单元格不能位于256列 #vlookup函数无效引用不能位于256列啥意思