SUMIFS具有移动标准

时间:2019-01-15 12:28:48

标签: excel sumifs

我的excel工作表看起来像这样:

工作表:

enter image description here

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

我已经尝试过了:

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

但是这只会简单地获取每行的X1值,而不是将其与行中的X2-4值进行比较,而是将其与第一行中的X2-4值进行比较,而不是我想要的是。我还尝试了使用数组和OFFSET的其他公式,但是我却无法将X1值与其相应的行“同步”。

有什么办法吗?

提前谢谢!

3 个答案:

答案 0 :(得分: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函数内为每行计算乘积,然后计算这些乘积之和。

答案 1 :(得分:0)

这似乎可行

  

= 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输入作为数组公式。圆括号将出现在公式周围。

enter image description here

答案 2 :(得分:0)

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

=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中,只需将要求和的范围乘以每个条件即可。

enter image description here