【问题标题】:How can I SUM values based om multiple criteria where one is a range (list of values)?如何根据多个条件对值求和,其中一个是范围(值列表)?
【发布时间】:2019-12-23 20:37:23
【问题描述】:

我正在使用 Google 表格,但现在它似乎也支持大多数 Excel 功能。

我想根据多个条件获取 SUM。我找到了每个标准的公式,但我还没有找到任何方法来组合这些标准。

SUM of all values (G) where E="X" - SUMIFS(G3:G9;E3:E9;"X")

SUM of all values (G) where F is in B - SUMPRODUCT(SUMIF(F3:F9;B3:B7;G3:G9))

我可以使用什么公式?

SUM of all values (G) where F is in B AND E="X" - ??

【问题讨论】:

    标签: regex google-sheets google-sheets-formula google-sheets-query sumproduct


    【解决方案1】:

    试试这个:

    =sumproduct(isnumber(match(F3:F9,B3:B7,0)),(E3:E9="X"),G3:G9)
    

    简要说明

    如果在 B 列中找到 F 列中的值,isnumber(match(F3:F9,B3:B7,0)) 将创建一列真 (1s) 和假 (0s) 值。

    (E3:E9="X") 如果列 E 的值为 X,则执行相同的操作

    sumproduct(): 如果以上两个都为真 (1s),则这些乘以 G 中的相应值并将整列相加。如果其中任何一个为零,则相应的值当然为零。

    【讨论】:

      【解决方案2】:
      =SUMPRODUCT(QUERY(E2:G, "where E='X' and F='B'", 0))
      


      =SUMPRODUCT(QUERY(E2:G, "where not F matches 'F|G|H|I' and E='X' or F='B'", 0))
      

      【讨论】:

      • 非常优雅地使用Query 函数。如果我可以进行调整以删除 sumproduct 并避免硬编码匹配值:=index(QUERY(E3:G, "Select sum(G) where E='X' and F matches '"&TEXTJOIN("|",1,B3:B)&"'", 0),2)
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-04-01
      • 2021-10-12
      • 2021-05-12
      • 2021-01-04
      相关资源
      最近更新 更多