【问题标题】:SUMIF in Google Sheets for a month and if a column contains text谷歌表格中的 SUMIF 一个月,如果一列包含文本
【发布时间】:2020-08-12 13:40:46
【问题描述】:

我有一些简单的数据,格式如下:

我需要对最后一列求和,但要基于域列中的文本。结果表应该是这样的......鉴于需要的文本过滤,我没有使用数据透视表。

为此,例如,对于 7 月域 1,我有一个这样的公式:

=SUMIFS(C:C, MONTH(A:A), 7, B:B, "domain1.") 

对于其他域:

=SUMIFS(C:C, MONTH(A:A), 7, B:B, "<>domain1.") 

我使用SUMIFS 因为我需要多个条件。但是上面的这个公式给出了一个错误:

错误:SUMIFS 的数组参数大小不同。

列的结构都是 A:A、B:B 等。出了什么问题?

谢谢。

【问题讨论】:

  • 分享您的工作表副本

标签: google-sheets sum google-sheets-formula google-sheets-query sumifs


【解决方案1】:
MONTH(A:A)

将只输出一个单元格,除非您将公式包装成 INDEXARRAYFORMULA

=INDEX(SUMIFS(C:C, MONTH(A:A), 7, B:B, "<>domain1.*"))



=ARRAYFORMULA(QUERY({TEXT(A2:A, "mmmm"), B2:C}, 
 "select Col1,sum(Col3) 
  where not Col2 contains 'domain1.' 
    and Col3 is not null 
  group by Col1 
  label sum(Col3)''"))

【讨论】:

  • 谢谢。 ARRAYFORMULA 有效!但是,文本匹配没有。这就是您推荐基于 SQL 查询的方法的原因吗?我还想我需要以某种方式将年份包括在条件中。
  • 对于包括年份,您可以使用建议的查询公式并将mmmm替换为mmmm yyyy
  • 哦,完美。是的,星号有效!耶,谢谢谢谢!
  • 据我所知,如果我确实想创建您建议的那种查询格式,如何使用相同的查询包含 domain1 和 non-domain1 列?
  • 不确定如何解释您的问题...您能更详细地解释一下您的目标是什么吗?
猜你喜欢
  • 1970-01-01
  • 2017-11-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-05-19
相关资源
最近更新 更多