【发布时间】:2022-01-03 23:28:55
【问题描述】:
我对 ArrayFormula 很陌生,一直在尝试,但有时该公式有效,有时无效。我要做的是结合 ArrayFormula、Countif 来搜索部分文本。
如下面的工作表所示,有 10 个科目(A 列),每个科目至少有 4 个样本(A、B、C、D)中的一个汇总为一个字符串(B 列)。我要做的是找出哪个主题有样本 A 或 B 或 C 或 D。
我为每个样本尝试了一个公式,例如单元格D3
=IF(COUNTIF($B3,"*"&$D$2&"*")>0,$A3,"")
它返回正确的结果。但是,当我在单元格I3 中尝试数组公式时,
=arrayformula(IF(COUNTIF($B3:B,"*"&$D$2&"*")>0,$A3:A,""))
答案很奇怪。例如:没有样本“A”的受试者(Gamma、Zeta、Eta、Theta)显示为具有样本“A”。这也适用于样本 B、C、D
不知道这里出了什么问题。 Here is the link to the worksheet
【问题讨论】:
-
您使用的是 Excel 还是 GoogleSheets?我假设后者并删除了 Excel 标签。什么,究竟是“答案很奇怪”。什么意思?
-
这是谷歌表格。没有样本“A”的受试者(Gamma、Zeta、Eta、Theta)显示为具有样本“A”。
-
你可以套用这个公式
=ARRAYFORMULA (IF(REGEXMATCH(B3:B, D2:G2), A3:A,))
标签: google-sheets array-formulas