【问题标题】:How to use SUMIF formula over jagged sum range如何在锯齿状总和范围内使用 SUMIF 公式
【发布时间】:2020-02-21 05:34:44
【问题描述】:

我需要求和的单元格位于两列之一。举个例子:我有一个 ID 字段,我将对其进行小计。每个条目都有一个 v1 值,可能还有一个 v2 值。我需要以一种取 v1 值的方式求和,除非 v2 单元格不是空白的,在这种情况下我会使用 v2 值。

这样做的一种方法是添加一个额外的列(我称之为选择(v)),它执行条件IF 公式来选择要求和的值。然后,我可以在SUMIF 公式中简单地使用这个额外的列作为sum_range

假设这些数据从单元格 A1 开始,我的选择(v)公式将是

=IF(ISBLANK(C2),B2,C2)

然后我的小计公式将是

=SUMIF($A:$A,A2,$D:$D)

有没有办法在不使用这个额外的 choose(v) 列的情况下完成这个小计?

【问题讨论】:

    标签: excel-formula


    【解决方案1】:

    也许如下:

    =SUMIFS(B:B,A:A,A2,C:C,"")+SUMIFS(C:C,A:A,A2)
    

    【讨论】:

      【解决方案2】:

      又快又脏的 SUMPRODUCT:

      =SUMPRODUCT(((($C$2:$C$7<>"")*$C$2:$C$7)+(($C$2:$C$7="")*$B$2:$B$7))*($A$2:$A$7=A2))
      


      或者如果有动态数组公式过滤器:

      =SUM(FILTER(CHOOSE(($C$2:$C$7="")+1,$C$2:$C$7,$B$2:$B$7),$A$2:$A$7=A2))
      

      【讨论】:

        猜你喜欢
        • 2017-05-06
        • 1970-01-01
        • 2017-08-06
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-11-27
        相关资源
        最近更新 更多