Excel公式与2张3列匹配并从第4列中提取数据?

我试图生成一个公式,将从工作簿中的另一张工作表中获取信息。

我有1张名为“视图”,其中包含这些列:

ReportName QueryName ViewName ViewAlias 

并在名为“项目”的表2我有:

 ReportName QueryName FindViewName ViewName ViewAlias FieldName 

只有,ViewName是空白的,我需要填充它。 目前我有这个公式

 =IF(ISERROR(VLOOKUP(E3,Views,1)), "", (VLOOKUP(E3, Views, 1))) 

在“FindViewName”列中。 然而“ViewAlias”并不明显,所以有些项目什么都不拉回来。

为了find这些列的“ViewName”,我需要比较每个工作表上的“ReportName”“QueryName”和“ViewAlias”。 如果它们匹配,我希望它填充“视图”表中的信息“视图名称”。

我似乎无法想出办法做到这一点,只是不断收到错误。 如果有人可以提供一个build议,这将是非常有益的!

在Sheet1上标题为Key创build一个新的计算列,为第2行创build一个新的计算列:

 =$a2&"."&$b2&"."&d2 

复制下来的所有行(希望您使用Excel表,所以这种情况自动发生!)

在工作表2上,对于ViewName列,请在第2行中input:

 =INDEX(sheet1!$D:$D,MATCH($a2&"."&$b2&"."&d2,sheet1!$D:$D,0)) 

复制下来的所有行(再次,希望您使用Excel表,所以这种情况自动发生!)

如果您正在使用表格,则可以通过编辑公式并select范围来修改该表格以便轻松地引用数据项目

最简单的方法是创build一个“助手”列,如下所示:

假设:

意见表:

 Col A: Col B: Col C: Col D: Col E: ReportName QueryName ViewName ViewAlias Helper =A2 & "|" & B2 & "|" & D2 

项目表:

 Col A: Col B: Col C: Col D: Col E: Col F: Col G: ReportName QueryName FindViewName ViewName ViewAlias FieldName Helper =OFFSET(Views!$A$1,MATCH(G2,Views!$E:$E,0)-1,2) =A2 & "|" & B2 & "|" & E2 

实际上,您正在使用=A2 & "|" & B2 & "|" & E2来创build要检查的元素的分组。 =A2 & "|" & B2 & "|" & E2 =A2 & "|" & B2 & "|" & E2公式在助手列,然后你find匹配它的视图工作表( MATCH(G2,Views!$E:$E,0)匹配它的行,并从该行的列C拉动数据。

希望这是有道理的。