我正在尝试生成一个公式,该公式将从工作簿中的另一张纸上提取信息。
我有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列。
希望这是有道理的。