我是否可以(如果可以,如何使用?)使用 MATCH 函数在两个(或更多)不同的电子表格中搜索一个值?

我是否可以(如果可以,如何使用?)使用 MATCH 函数在两个(或更多)不同的电子表格中搜索一个值?

首先,我将解释我已经拥有的内容(哪些有效),然后解释我的问题,即关于扩展它:

我有两个不同的电子表格需要同时处理,我需要查看另一个电子表格中是否已经输入了给定的值,因为它可能会改变结果。

IE。

如果我正在处理电子表格 1 并在 A1 中输入一个值,我希望它搜索电子表格 2 以查看它是否在 A 列的任何位置。如果是,我会沿着 1 条路径走,如果不是,我会沿着另一条路径走。

我目前使用的公式是这样的:

=IFERROR(IF(MATCH(A1,'[Spreadsheet 2.xlsx]Sheet1'!$A:$A,0),"Yes",),"")

这就是我想要的,如果电子表格 1、A1 中的值出现在电子表格 2、A 列的任何位置,我会得到“是”,如果没有,则空间留空。

但是我现在需要找出电子表格 1、A1 中的值是在电子表格 2 的 A 列中还是在电子表格 3 的 A 列中。

我不需要知道它出现在哪里,因此输入“是”或空白,我只需要知道它是否出现在电子表格 2 或 3 的 A 列中的任何位置。

我目前有这个公式,但它不起作用(它不会触发错误,只是没有按照我的需要去做:

=IFERROR(IF(MATCH(A1,'[Spreadsheet 2.xlsx]Sheet1'!$A:$A,0),"Yes", IF(MATCH(A1,'[Spreadsheet 3.xlsx]Sheet1'!$A:$A,0),"Yes",)),"")

如果电子表格 2 中有匹配项,则此方法有效,但如果仅电子表格 3 中有匹配项,则此方法无效。

我确信我只是做了一些愚蠢的事情,但我看不到它。

有人可以帮忙吗?

答案1

尝试使用ISERROR函数。它并不简洁,IFERROR但当您开始嵌套条件时更容易遵循。

=IF(AND(ISERROR(MATCH(A1,'[Spreadsheet 2.xlsx]Sheet1'!$A:$A,0)), ISERROR(MATCH(A1,'[Spreadsheet 3.xlsx]Sheet1'!$A:$A,0))),"","YES")

如果两个匹配函数都返回错误,则得到""。如果其中一个返回非错误,则AND返回FALSE,结果为YES。如果您想检查很多工作表而不是仅检查其他几张工作表,这会变得有点笨拙。

相关内容