我的工作簿包含工作表s1
和s2
。对于s1
列U中的给定值,我想确定它是否存在于s2
的G列中,使用INDEX(MATCH())。我没有使用VLOOKUP,因为我实际上是在尝试进行多标准查找,并且我遵循了here所述的方法;这只是使用单一标准查找的最简单的情况。
当我使用公式时:
=INDEX('S2'!A1:Q2945,MATCH(1,'S2'!G1:G2945='S1'!U4,0),2)
我得到#N / A错误"值不可用"。
但是,当我使用以下任一公式时:
=VLOOKUP('S1'!U4,'S2'!G1:G2945,1,FALSE)
=INDEX('S2'!A1:Q2945,MATCH('S1'!U4,'S2'!G1:G2945,0),2)
然后查找成功。
我通过从S1
复制U4的值并在S2
上搜索来验证值是否匹配。
为什么我得到"价值不可用"第一个公式的错误?
答案 0 :(得分:1)
作为解决这个问题的答案而写,等式中的MATCH()函数指定的不仅仅是数组作为其第二个参数。
您现有的公式:
=INDEX('S2'!A1:Q2945,MATCH(1,'S2'!G1:G2945='S1'!U4,0),2)
...应更正为以下内容(删除“ ='S1'!U4 ”):
=INDEX('S2'!A1:Q2945,MATCH(1,'S2'!G1:G2945,0),2)
希望这有帮助。
干杯!