【发布时间】:2020-07-20 15:07:33
【问题描述】:
我在使用 Google 表格中的公式时遇到了一些问题。对我来说,这没有任何意义,为什么它在一个地方而不是另一个地方工作。 所以,这是我的示例Spreadsheet
我的目标是将 D 列中的结果复制到 E 列,但内置了一个过滤器,用于过滤 A 列,公司。
这是运行良好的公式:
=ArrayFormula(TEXTJOIN(", ",TRUE,Unique(IF(B4=B:B,C:C,""))))
我需要 IF 部分来取另一个条件,即 A=A:A
=ArrayFormula(TEXTJOIN(", ",TRUE,Unique(IF(AND(A4=A:A,B4=B:B),C:C,"NOT GOOD"))))
所以我认为 AND 会像在其他地方那样做。但在这种特殊情况下,这似乎不起作用并且每次都会出错。 我检查了一下,基于此逻辑似乎很好(给出预期结果):
=ArrayFormula(TEXTJOIN(", ",TRUE,Unique(IF(AND(TRUE,TRUE),C:C,"NOT GOOD"))))
奇怪的是,如果我选择 IF 公式,它告诉我 AND 中的两个条件都为真,但它仍然给我 FALSE 结果。 showing true, but results in false
我很难理解为什么会这样?我希望你能帮忙。提前谢谢你。
【问题讨论】:
-
嘿,我想我可以帮助演示工作表中的解决方案/问题,如果您将其设为可编辑而不是仅查看。
-
@MattKing,谢谢,我让它可以编辑了!
-
你不能像你试图做的那样在数组布尔逻辑中使用 AND() 。您需要用乘法替换 AND(),用加法替换 OR()。所以例如,而不是 AND(A4=A:A,B4=B:B) 你会写 (A4=A:A)*(B4=B:B)
标签: google-sheets formula array-formulas