vba 如果返回 #N/A,则向此 INDEX MATCH 公式添加条件

声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow 原文地址: http://stackoverflow.com/questions/14653784/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me): StackOverFlow

提示:将鼠标放在中文语句上可以显示对应的英文。显示中英文
时间:2020-09-08 14:52:31  来源:igfitidea点击:

Add condition to this INDEX MATCH formula if it returns #N/A

excelvbaexcel-vbaexcel-formulaexcel-2010

提问by Mowgli

I have a formula in Sheet3 to look up a value from sheet1 and return it, but sometimes, if values are not in sheet1, I want it to check in sheet2. sheet1 and sheet2 have same data in column A:A, only columns have different values.

我在 Sheet3 中有一个公式可以从 sheet1 中查找值并返回它,但有时,如果值不在 sheet1 中,我希望它检查 sheet2。sheet1 和 sheet2 在 A:A 列中具有相同的数据,只有列具有不同的值。

=INDEX(Sheet1!D:D,MATCH(Sheet3!A2&"MAN_CHANGE",Sheet1!A:A,0))

How can I modify the formula to check in sheet2 if there's not a match in sheet1?

如果 sheet1 中没有匹配项,如何修改公式以签入 sheet2?

回答by Peter L.

Glad to hear from you again!) Try this please:

很高兴再次收到您的来信!)请试试这个:

=INDEX(Sheet1!D:D,IFERROR(MATCH(Sheet3!A2&"MAN_CHANGE",Sheet1!A:A,0),MATCH(Sheet3!A2&"MAN_CHANGE",Sheet2!A:A,0)))

回答by scott

iferror will check for any error result from the index formula

iferror 将检查索引公式的任何错误结果

=iferror(INDEX(Sheet1!D:D,MATCH(Sheet3!A2&"MAN_CHANGE",Sheet1!A:A,0)),"NOT FOUND")

Alternatively you could use isNA to search just for #N/A

或者,您可以使用 isNA 仅搜索 #N/A

=if(ISNA(INDEX(Sheet1!D:D,MATCH(Sheet3!A2&"MAN_CHANGE",Sheet1!A:A,0)),"NOT FOUND",INDEX(Sheet1!D:D,MATCH(Sheet3!A2&"MAN_CHANGE",Sheet1!A:A,0)))

回答by chrisso

I nested two INDEX,MATCH formulas and it worked.

我嵌套了两个 INDEX,MATCH 公式并且它起作用了。

=IFERROR(INDEX('Activity Report 11-30-17'!G:G,MATCH('Recon Report 11-30-17'!C2,'Activity Report 11-30-17'!D:D,0)),INDEX('Activity Report 11-30-17'!G:G,MATCH('Recon Report 11-30-17'!D2,'Activity Report 11-30-17'!D:D,0)))

=IFERROR(INDEX('活动报告 11-30-17'!G:G,MATCH('侦察报告 11-30-17'!C2,'活动报告 11-30-17'!D:D,0)) ,INDEX('活动报告 11-30-17'!G:G,MATCH('侦察报告 11-30-17'!D2,'活动报告 11-30-17'!D:D,0)))