Excel:在另外两列中search两列以返回第三个值

有点痛苦 所以基本上有一个有趣的问题。 有一个很长的实体列表(200多个),我需要将它们与另一个列表中的代码进行匹配。 因此,从实体列表中,我有实体的名称和国家(列A中的名称,列D中的国家/地区),我需要使用另一个列表中的代码填充列F,或者如果找不到代码,则添加未知。

因此,试图通过使用&运算符So =MATCH(A2&D2用作关键字,给我一个像“cool companyUNITED KINGDOM”这样的值来构build查询)在第二个列表(导入到表2)中包含以下列代码名称国家

所以我想search名字和国家合并的数组:

 =MATCH(A2&D2,Sheet2!B2:B99999&Sheet2!C2:C99999,0) 

然后我试着去索引,所以我的完整列表看起来像

 =INDEX(Sheet2!A2:C99999, MATCH(Sheet2!A2&Sheet2!D2,Sheet2!B2:B99999&Sheet2!C2:C99999,0)) 

而我所得到的是#Value

有什么build议么

编辑:更多信息

因此,表单一看起来像这样(它的列CI需要从列A中的代码填充,表二)

 Entity name Status GIIN Country Ben Dist Ltd NFFE N/a UNITED KINGDOM Karamara Sdn Bhd PFFE N/a MALAYSIA Farbion Trade (Curacao) NV LFFI N/a Tentorim (International) BV LFFI N/a NETHERLANDS Catamo BV TLTD N/a NETHERLANDS Ben Dist Deutschland GmbH FLTD N/a GERMANY Ben Dist Investments BV PFFE N/a NETHERLANDS Ben Dist Limited TLTD N/a UNITED KINGDOM Complete Solution Service Limited GLRS N/a UNITED KINGDOM BDLT SA de CV TLTD N/a MEXICO Telsa Telco Services SLTD N/a CHILE 

第二个列表将如下所示

 GIIN FINm CountryNm AAAUG3.99999.SL.764 Asset Plus HSI Fund THAILAND AABEIL.99999.SL.528 Gresham Capital CLO II BV NETHERLANDS AAB36F.99999.SL.470 Maitland Malta Limited MALTA AACRQK.99999.SL.756 BBGI GROUP SA SWITZERLAND AADAD7.99999.SL.528 E-MAC DE 2009-I BV NETHERLANDS AADDBX.99999.SL.060 GWD Limited BERMUDA AAE9W5.99999.SL.764 Bualuang Money Market RMF THAILAND AAGH8E.99999.SL.276 Sparda-Bank Baden-Wuerttemberg eG GERMANY AAGR6U.99999.SL.438 Konsolidationsanstalt LIECHTENSTEIN AAGWV3.99999.SL.360 BATAVIA PROTEKSI PRIMA 18 INDONESIA AAGXH0.99999.SL.136 Monarch Capital Partners Ltd CAYMAN ISLANDS AAHY1V.99999.SL.158 Pingtung County Farmers' Association TAIWAN AAH0IZ.99999.SL.136 Diversified Absolute Return Fund CAYMAN ISLANDS 

我build议你使用下面的数组公式:

 = IFERROR(INDEX(List,SMALL(IF((INDEX(List,,2,1)=A2)*(INDEX(List,,3,1)=D2),ROW(List)-MIN(ROW(List))+1,""),1),1,1),"N/A") 

要在Windows中input数组公式,请使用Ctrl + Alt + Enter。 在Mac键盘上使用Command + Enter。 然后向下拖动公式。

在这个公式中,我已经使用命名范围List ,这相当于您的Sheet2!$A$2:$C$99999 。 命名范围使复杂的公式更具可读性和灵活性。 如果您不想使用命名范围,则只需将Sheet2!$A$2:$C$99999replace为List Sheet2!$A$2:$C$99999

 =IFERROR(INDEX(Sheet2!$A$2:$C$99999,SMALL(IF((INDEX(Sheet2!$A$2:$C$99999,,2,1)=A2)*(INDEX(Sheet2!$A$2:$C$99999,,3,1)=D2),ROW(Sheet2!$A$2:$C$99999)-MIN(ROW(Sheet2!$A$2:$C$99999))+1,""),1),1,1),"N/A") 

如果您的工作表如下所示:

工作表Sheet1

Sheet2中