【问题标题】:Subtotal with 2 criteria包含 2 个条件的小计
【发布时间】:2021-06-15 08:09:04
【问题描述】:

如何对 2 个条件进行小计?

例如。根据截图:

Excel Screenshot

我希望“G”列中“LONG”的小计和“Net P/L”应该> 0

两个条件都需要满足

=小计“多头”和“利润 >0”。

【问题讨论】:

    标签: excel-formula subtotal


    【解决方案1】:

    修改后的答案

    根据需要将过滤器应用于结果,这是对您提供的公式的修改:

    =SUM( (Table6[[#All],[LONG/SHORT]]="LONG")*(Table6[[#All],[NET P/L]]>0)*
              (SUBTOTAL(3,OFFSET(Table6[[#Headers],[LONG/SHORT]],
                                 ROW(Table6[[#All],[LONG/SHORT]]) - MIN(ROW(Table6[[#All],[LONG/SHORT]] ) ),
                                 0) ) ) )
    

    我在条件中添加了(Table6[[#All],[NET P/L]]>0)*。您可以以相同的方式添加任意数量的附加过滤器。注意:我将 SUMPRODUCT 转换为 SUM 因为 sum 就足够了。

    如果您使用 Excel 2013 或更低版本,则可能需要将其作为数组公式输入。 (CTRL SHIFT ENTER)

    这是使用 OTHER 列过滤数据的结果:

    以前的答案

    您可以执行 COUNTIFS 或使用带有布尔条件的 SUM。

    =COUNTIFS( V2:V26, ">0", G2:G26, "LONG" )
    

    =SUM((V2:V26>0)*(G2:G26="LONG"))
    

    如果您希望它表现得像 SUBTOTAL,那么您可以通过强制公式仅查看具有如下原始数据的单元格来模拟 SUBTOTAL:

    =SUM((V2:V26>0)*(G2:G26="LONG")*NOT(ISFORMULA( V2:V26 )))
    

    但如果第 V 列有公式,这将不起作用。

    【讨论】:

    • 感谢您的回复。但我希望使用 SUBTOTAL 公式仅计算过滤行的计数。你能帮帮我吗??
    • 我找到了这样一个标准的公式 -- =SUMPRODUCT((Table1[[#All],[Long/Short]]="LONG")*(SUBTOTAL(3,OFFSET(Table1[ [#Headers],[Long/Short]],ROW(Table1[[#All],[Long/Short]])-MIN(ROW(Table1[[#All],[Long/Short]])),0 )))) - 。但我想要 2 个 Crieteria 的小计(Long & P/L >0)
    • 现在我明白你想要什么了——与其说是小计,不如说是对过滤的响应,这就解释了为什么要小计。这是一个有趣的问题,上面的公式非常聪明。我将发布一个我认为可行的修改版本。
    【解决方案2】:

    试试这个公式:

    =SUMPRODUCT((G3:G5000="LONG")*(V3:V5000>0)*SUBTOTAL(103,OFFSET(V2,ROW(V3:V5000)-ROW(V2),)))
    

    SUBTOTAL 中的 103 将排除过滤的行。

    这是一个数组公式。将其输入到单元格中,然后按[Ctrl]+[Shift]+[Enter]创建数组公式。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-10-08
      • 2020-10-10
      • 1970-01-01
      • 2022-11-02
      • 1970-01-01
      • 2015-01-20
      • 2018-10-15
      • 2012-02-14
      相关资源
      最近更新 更多