Excel公式匹配来自2张纸的3列,并从第四列中提取数据



我正在尝试生成一个公式,该公式将从工作簿中的另一张纸上提取信息。

我有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"并没有截然不同,因此有些项目一无所获。

为了找到这些列的" viewName",我需要在每个纸上比较" reportName" queryname"one_answers" viewalias"。如果它们匹配,我希望它将" ViewName"填充到"视图"表中的信息。

我似乎无法找到一种实现这一目标的方法,只有继续遇到错误。如果有人能提出建议,这将非常有帮助!

在Sheep1上创建一个新计算的列,标题为"键",对于第2行,请进行:

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

将其放下所有行(希望您使用Excel表,这样就会自动发生!)

在第2页上,对于ViewName列,在第2行中输入:

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

将其放在所有行中(再次,希望您使用Excel表,因此会自动发生!)

如果您正在使用表,则可以通过编辑公式并选择范围

来修改此内容以轻松引用数据项

最简单的方法是创建一个"助手"列,如下:

假设:

视图表:

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公式检查的元素的分组,然后您在视图表中找到与之匹配的行(MATCH(G2,Views!$E:$E,0)并从该行的C列。

希望这是有道理的。

最新更新