尝试获取2个字段以匹配第二个工作表中的数据并返回值

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了尝试获取2个字段以匹配第二个工作表中的数据并返回值相关的知识,希望对你有一定的参考价值。

我试图让以下在excel工作,我似乎无法做到这一点。我有2张纸,其中一张带有数据(表2),其中一张我已经创建了一个带有响应字段的问题框(表1)。因此在数据表中有A,B和C列。在问题框(表1)中,我需要知道放入A的图形和放入B的图形是否都匹配Sheet中A列和B列中的数据2如果他们这样做,我想将图3中C列中的C对应的图返回到表1中的C列。

我假设我需要使用IF AND公式,并以各种不同的方式尝试以下方法,但它每次给我的回报都是0。

=IF(AND(A1=Sheet3!A:A,B1=Sheet3!B:B),Sheet3!C:C,0)

我在这个系绳的尽头,所以任何帮助将不胜感激。

答案

这是一个数组公式,通过在公式栏中按Ctrl + Shift + Enter来应用此公式。

=IFERROR(INDEX(Sheet3!C:C,SMALL(IF(A1=Sheet3!A:A,IF(B1=Sheet3!B:B,ROW(Sheet3!A:A)),1)),"No Match Found")

这应该通过构建一个与A和B匹配的行号数组,然后通过从数组中获取第一个最小数字并将其提供给SMALL([array],1)来获取第一个匹配INDEX()

这个公式可以调整为拖动,以便通过将小到SMALL([array],ROW(1:1)更改并拖动公式来返回多个匹配,但我建议将“找不到匹配”更改为“”,这样一旦显示全部,就会有空白单元格的比赛。

另一答案

如果你很高兴使用数组公式(当你按Ctrl时按ShiftEnter),那么这个公式应该工作正常:

我最初读它是因为你想从表3中获取信息,所以这会有效:

=INDEX(Sheet3!B1:B6,MATCH(INDEX(Sheet2!C1:C6,MATCH(A1&B1,Sheet2!A1:A6&Sheet2!B1:B6,0),1),Sheet3!A1:A6,0),1)

但重新阅读,我不认为是这样,所以这应该做...

=INDEX(Sheet2!C1:C6,MATCH(A1&B1,Sheet2!A1:A6&Sheet2!B1:B6,0),1)

这是使用:

A1作为你比较A1:A6Sheet2值的第一个答案

B1作为你比较B1:B6Sheet2值的第一个答案

获取相应的值,其中上述两个匹配来自C1:C6中的Sheet2

然后,它在A1:A6中的Sheet3中查找该值,并从B1:B6中的Sheet3返回相应的值

以上是关于尝试获取2个字段以匹配第二个工作表中的数据并返回值的主要内容,如果未能解决你的问题,请参考以下文章

是否有一个 Excel 函数或脚本来查找和替换两个不同工作表中匹配的字段,并将其替换为第二个工作表中包含的另一个数据?

返回第一个表中的所有数据,如果存在,则返回第二个表中的 1 个数据

与第二个字段相交的 SQL 中的返回字段?

使用 SSIS 将单个字段值拆分为第二个表中的多行

MySQL 查询从表中检索数据和第二个查询以提取其他结果,没有重复

为 Access 中的 JOIN 中的第二个重复行返回 null