【问题标题】:COUNTIFS with LEN and more conditions具有 LEN 和更多条件的 COUNTIFS
【发布时间】:2020-03-26 11:46:44
【问题描述】:

有没有办法将 COUNTIFS 与 LEN 和更多条件一起使用。我想计算所有在 C 列中具有真值且 B 列中的字符串长度为 17 的行。所以类似于下面的 sn-p,但 LEN()=17 条件实际起作用的地方

COUNTIFS(Database!C:C;"=TRUE";Database!B:B;"LEN(Database!B:B)=17")

我知道我可以按照Countif with len in Google Spreadsheet 中的建议使用 ARRAYFORMULA,但尝试在没有额外列的情况下执行此操作。

【问题讨论】:

  • 试试=IFNA(ROWS(FILTER(Database!C:C; Database!C:C = TRUE; LEN(Database!B:B) = 17)); 0)
  • 或者用COUNTIFS:=COUNTIFS(Database!C:C, TRUE, ARRAYFORMULA(LEN(Database!B:B)), 17)(一开始怎么没想到)
  • 两者都对我不起作用,一个结果在#NV中,另一个在错误中......但感谢您的回复
  • 那是因为您使用 ; 是因为您的语言环境。只需将我的逗号, 更改为分号即可。第一个应该有效。实际上有分号。

标签: google-sheets google-sheets-formula counting countif


【解决方案1】:

你可以用SUMPRODUCT

示例:

=SUMPRODUCT(Database!C:C=true, LEN(Database!B:B)=17)

【讨论】:

  • 小错误:我们需要一个 ;而不是 , 这样会导致 =SUMPRODUCT(Database!C:C=true; LEN(Database!B:B)=17) 非常感谢
  • 对我来说是,,而不是;,这可能取决于您所在国家/地区的设置。很高兴它对您有所帮助!
【解决方案2】:

使用:

=INDEX(COUNTIFS(Database!C:C; TRUE; LEN(Database!B:B); 17))

【讨论】:

  • 嘿,@player0!在这种情况下,INDEX 是否比ARRAYFORMULA 更好?您从哪里得知INDEX 的这种行为?它确实将封闭范围视为与SUMPRODUCT 相同(实际乘法和加法除外),对吗?喜欢=SUMPRODUCT(COUNTIFS(Database!C:C, TRUE, LEN(Database!B:B), 17))
  • @kishkin 不,它只是更短。 INDEX 是 4 个数组类型公式之一
  • 第四个是什么?除了ARRAYFORMULAINDEXSUMPRODUCT。谢谢
  • ARRAYFORMULA、ARRAY_CONSTRAIN、索引、查询
【解决方案3】:

尝试:

=COUNTIFS(Database!C:C; TRUE; ARRAYFORMULA(LEN(Database!B:B)); 17)

以及替代过滤器解决方案:

=IFNA(ROWS(FILTER(Database!C:C; Database!C:C = TRUE; LEN(Database!B:B) = 17)); 0)

【讨论】:

    猜你喜欢
    • 2020-05-22
    • 1970-01-01
    • 1970-01-01
    • 2017-12-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多