[英]Reference a column in another sheet using column name (heading) in Google Sheets inside an ArrayFormula
我在https://docs.google.com/spreadsheets/d/1i96cjWWGwLQQd2enqQhLylFo31n5GyxbCTcTEPk2I2A/edit#gid=0有一个示例表。
我的问题有两个部分。
在names
表中,在C1
中,我有这个公式:
={
"Is Special";
ARRAYFORMULA(
IF(
A2:A <> "",
REGEXMATCH(B2:B, "b|d|e"),
)
)
}
该公式按预期工作,但我不喜欢B2:B
参考,因为我要检查的列不是很明显。 我宁愿通过它的名称来引用该列(在本例中为First Name
)。 那可能吗? 我可以用一些公式或 function 替换B2:B
,让我通过搜索First Name
来查找列范围吗? 我知道我可以使用MATCH
获取First Name
的列号,但我不确定如何将其放入此公式中——尤其是因为我不能在INDRECT
中使用ARRAYFORMULA
。
就像是:
={
"Is Special";
ARRAYFORMULA(
IF(
A2:A <> "",
REGEXMATCH([some formula or function that lets me lookup the column range by searching for "First Name"], "b|d|e"),
)
)
}
与上面类似,在names
表上,在D1
中我有这个公式:
={
"Count of one Properties";
ARRAYFORMULA(
IF(
A2:A <> "",
COUNTIFS(
properties!A:A, A2:A,
properties!B:B, "one"
),
)
)
}
该公式按预期工作。 但是,我不喜欢properties:B:B
参考。 阅读公式时,我并不清楚我正在检查properties
表中的哪一列。 是否有可能像上面那样通过搜索列名(在本例中type
)来获取列范围?
如果您不喜欢命名范围,请尝试:
={"Is Special"; ARRAYFORMULA(IF(A2:A<>"",
REGEXMATCH(FILTER({A2:B, D2:E}, {A1:B1, D1:E1}="First Name"), "b|d|e"), ))}
或者喜欢:
={"Count of one Properties"; ARRAYFORMULA(IF(A2:A<>"",
COUNTIFS(properties!A2:A, A2:A,
VLOOKUP(ROW(properties!A2:A),{ROW(properties!A2:A), properties!A2:Z},
MATCH("type", properties!1:1, 0)+1, 0), "one"), ))}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.