我有三个工作表:
Results:
|A |F |
--------------
|J123 |56 |
|J321 |53 |
|J122 |56 |
Reference B:
|A |B |E |
--------------------
|J123 |56 |J122 |
|J421 |63 |J422 |
Reference L1:
|A |B |E |
--------------------
|J423 |66 |J422 |
|J321 |53 |J322 |
“结果”工作表的F列中的单元格具有此代码,并且大部分时间都在运行:
=IFERROR((IFERROR(INDEX('L1'!$B$2:$B$1500,MATCH($C2,'L1'!$A$2:$A$1500,0)),INDEX(B!$B$2:$B$1500,MATCH($C2,B!$A$2:$A$1500,0)))),(IFERROR(INDEX('L1'!$B$2:$B$1500,MATCH($C2,'L1'!$E$2:$E$1500,0)),INDEX(B!$B$2:$B$1500,MATCH($C2,B!$E$2:$E$1500,0)))))
预期的功能是搜索参考文献中的A列。 L1表示结果工作表的A列中的字符串,如果找到该值,则返回与Ref L1中的字符串在结果工作表的F列相同的行上的列B的值。如果未找到,则搜索E列,依此类推。如果在那里找不到,请在参考中进行相同的搜索。乙
它似乎在大约80%的时间内起作用,当它没有时,手动执行列搜索会产生结果。
感谢任何帮助。
答案 0 :(得分:0)
错误与细胞数据类型有关。当我搜索“vlookup意外#N / A”时,我找到了修复程序。它也适用于INDEX / MATCH技术,因为它们容易受到许多文本类型的相同问题的影响,这些文本类型不等同于数字类型。
数据标签下的文字到列功能可以通过选择列来修复它 - >文本到数据 - >完。对于多个,您可以找到可以将其拉出的VBA宏。 在查阅列和数据源列上执行此操作将确保该函数尝试匹配相同的数据类型。