我已经尝试过,我想这里的答案大多数,但我无法让他们在我的情况下工作。
翻译成文字,我的问题看起来像这样:
Sum Y:Y列
条件1:B列:B如果字符串以“15 *”
条件2:列T:T必须大于0
条件3:OR(U列的值:U = 0或U:U> V:V)
放入SUMIFS
函数,从理论上讲,它看起来像SUMIFS(Y:Y,B:B,"15*",T:T,">0",or(U:U,"=0", U:U>V:V))
,
但当然它不会那样工作。
我也试过SUMPRODUCT
和SUM(SUMIF
...但我不知道如何将我想要完成的内容翻译成这两个。
所以,如果有人知道如何使这项工作,请。还有一些解释。
感谢。
答案 0 :(得分:2)
这里基于SUMPRODUCT的解决方案适合您。
=SUMPRODUCT(--(LEFT(B:B,2)="15"),--(T:T>0),((U:U=0)+(U:U>V:V)),Y:Y)
警告:仅在必要时应用完整的列引用,因为它会大大减慢工作表的速度。建议使用足够大的范围(但不是整列参考),因为每列将有数百万个细胞进行检查。
另请注意 Barry关于V列为负的查询对我发布的公式有重要意义,因为它会将2个TRUE条件计算为2,从而导致错误的结果。
答案 1 :(得分:0)
我会这样做:
<强> 1。为您的条件添加新列3
使用另一列,例如Z:Z你可以放入condition3。
例如,Z2=OR(U2>0;U2;V2)
中的公式。
此公式将为您提供值TRUE
或FALSE
。
<强> 2。然后,您可以将条件3基于新列中的值
现在你SUMIFS
公式可以是:
=SUMIFS((Y:Y;B:B;"15*";T:T;">0";Z:Z;TRUE)
我在你的例子中检查了这个并且它有效。