【问题标题】:SUMIFS with moving criteria带有移动标准的 SUMIFS
【发布时间】:2019-01-15 23:20:10
【问题描述】:

我的 Excel 工作表如下所示:

工作表:

我想做的是将 Bob 的所有 X1 值求和,这些值大于各自行上的 X2、X3 和 X4 值。因此,在这种情况下,5 + 14 + 15 = 34,因为 Bob 的其他 X1 值(1、6、-5 和 0)小于与它们在同一行上的 X2、X3 或 X4 值。

我试过这个:

=SUMIFS(B2:B11,A2:A11,"Bob",B2:B11,MAX(B2:E2))

但这只会取每一行的 X1 值,而不是将其与该行的 X2-4 值进行比较,它当然会将其与第一行的 X2-4 值进行比较,这不是我想要的是。我还尝试了其他一些公式,使用数组和偏移量,但我无法将 X1 值与其各自的行“同步”。

有什么办法吗?

提前谢谢你!

【问题讨论】:

    标签: excel sumifs


    【解决方案1】:

    这应该适用于数组公式 (CTRL+SHIFT+RETURN)。

    {=SUM(IF(A2:A11="Bob",1,0)*IF(C2:C11<B2:B11,1,0)*IF(D2:D11<B2:B11,1,0)*IF(E2:E11<B2:B11,1,0)*B2:B11)}
    

    这将在 SUM 函数中分别计算每一行的乘积,然后计算这些乘积的总和。

    【讨论】:

      【解决方案2】:

      这似乎有效

      =SUM(IF(A2:A11="Bob",IF(B2:B11>=C2:C11,IF(B2:B11>=D2:D11,IF(B2:B11>=E2:E11,B2 :B11))))))

      使用 CTRL、SHIFT 和 ENTER 作为数组公式输入。花括号将出现在公式周围。

      【讨论】:

        【解决方案3】:

        为什么每个人都如此热衷于使用数组公式? 这是避免它们的解决方案:

        =SUMPRODUCT($B$2:$B$11*($A$2:$A$11="Bob")*($B$2:$B$11>$C$2:$C$11)*($B$2:$B$11>$D$2:$D$11)*($B$2:$B$11>$E$2:$E$11))
        

        只需将您想要求和的范围乘以 SUMPRODUCT 中的每个条件即可。

        【讨论】:

          猜你喜欢
          • 2021-01-03
          • 2023-02-04
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2022-11-10
          • 2014-10-11
          相关资源
          最近更新 更多