【问题标题】:How to make ARRAYFORMULA work with SUMIFS?如何使 ARRAYFORMULA 与 SUMIFS 一起使用?
【发布时间】:2019-07-30 18:12:31
【问题描述】:

我有一个可以正常工作的SUMIFS 公式,但我必须将它向下拖动以填充每一列,这对于我的电子表格中的数据量来说是非常不切实际的,因此我想把它变成一个@ 987654325@。该公式应该计算一个月内购买了多少产品。目前看起来是这样的:

=SUMIFS(All!$N$3:$N, All!$AG$3:$AG, ">=1/1/2018", All!$AG$3:$AG, "<=31/1/2018", All!$L$3:$L, $A2)

All!N 包含客户购买的商品数量,All!AG 包含日期,All!L 包含与 A 列中的产品代码核对的产品代码。

我试着简单地做

=ARRAYFORMULA(SUMIFS(All!$N$3:$N, All!$AG$3:$AG, ">=1/1/2018", All!$AG$3:$AG, "<=31/1/2018", All!$L$3:$L, $A$2:$A))

但这仅适用于单元格A2 - 它仅打印与其他公式相同的结果,并且不会在列中继续,这就是我想要它做的。该解决方案适用于我拥有的SUMIF 公式(它做同样的事情但不检查日期)但它不适用于SUMIFS。我不知道为什么,而且我不是最擅长解决这些电子表格公式的问题,所以我希望有人能提供帮助。

更新:这是一个显示问题的虚拟表:https://docs.google.com/spreadsheets/d/1pX-icbJxmy8A0jhKLnSRxhZTLRgYFG_iU2BOQrseCCg/edit?usp=sharing

【问题讨论】:

标签: google-sheets google-sheets-formula array-formulas google-sheets-query gs-vlookup


【解决方案1】:

粘贴到B2单元格:

=ARRAYFORMULA(IF(LEN($A$2:$A), IFERROR(VLOOKUP($A$2:$A, 
 QUERY({All!$B$3:$D}, 
 "select Col1, sum(Col2) 
  where Col3 is not null 
  group by Col1 
  label sum(Col2)''", 0), 2, 0), 0), ))

粘贴到C2单元格并向右拖动:

=ARRAYFORMULA(IF(LEN($A$2:$A), IFERROR(VLOOKUP($A$2:$A, 
 QUERY({All!$B$3:$D}, 
 "select Col1, sum(Col2) 
  where Col3 >= date '"&TEXT(        C$1,     "yyyy-mm-dd")&"' 
    and Col3 <= date '"&TEXT(EOMONTH(C$1, 0), "yyyy-mm-dd")&"' 
  group by Col1 
  label sum(Col2)''", 0), 2, 0), 0), ))

spreadsheet demo

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-07
    • 1970-01-01
    • 1970-01-01
    • 2013-12-12
    • 1970-01-01
    相关资源
    最近更新 更多