SUMIFS 与 AND 和 OR
SUMIFS with AND and OR
我试过了,我认为这里的大部分答案,但我无法让它们在我的情况下工作。
翻译成文本,我的问题看起来像这样:
将 Y:Y 列与
相加
条件 1:第 B:B 列如果字符串以“15*”开头
条件 2:列 T:T 必须大于 0
条件 3:或(来自列 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
...但我不知道如何将我想要完成的事情转化为这两个。
所以,如果有人知道如何使这项工作,请。请解释一下。
谢谢。
这是适合您的基于 SUMPRODUCT 的解决方案。
=SUMPRODUCT(--(LEFT(B:B,2)="15"),--(T:T>0),((U:U=0)+(U:U>V:V)),Y:Y)
注意: 仅在必要时应用完整的列引用,因为这会大大降低您的 sheet 速度。建议有一个足够大的范围(但不是整个列引用),因为每列将有数百万个单元格要检查。
另请注意 Barry 关于 V 列为负的查询对我发布的公式具有重要意义,因为它将 2 个 TRUE 条件计算为 2,因此导致错误结果。
我会这样做:
1.为您的条件添加新列 3
使用另一列,例如 Z:Z 您可以在其中放置条件 3。
例如 Z2=OR(U2>0;U2;V2)
.
中的公式
此公式的结果是 TRUE
或 FALSE
。
2。然后您可以将条件 3 基于新列
中的值
现在你的SUMIFS
公式可以是:
=SUMIFS((Y:Y;B:B;"15*";T:T;">0";Z:Z;TRUE)
我在你的示例中检查过这个并且它有效。
我试过了,我认为这里的大部分答案,但我无法让它们在我的情况下工作。
翻译成文本,我的问题看起来像这样:
将 Y:Y 列与
相加条件 1:第 B:B 列如果字符串以“15*”开头
条件 2:列 T:T 必须大于 0
条件 3:或(来自列 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
...但我不知道如何将我想要完成的事情转化为这两个。
所以,如果有人知道如何使这项工作,请。请解释一下。
谢谢。
这是适合您的基于 SUMPRODUCT 的解决方案。
=SUMPRODUCT(--(LEFT(B:B,2)="15"),--(T:T>0),((U:U=0)+(U:U>V:V)),Y:Y)
注意: 仅在必要时应用完整的列引用,因为这会大大降低您的 sheet 速度。建议有一个足够大的范围(但不是整个列引用),因为每列将有数百万个单元格要检查。
另请注意 Barry 关于 V 列为负的查询对我发布的公式具有重要意义,因为它将 2 个 TRUE 条件计算为 2,因此导致错误结果。
我会这样做:
1.为您的条件添加新列 3
使用另一列,例如 Z:Z 您可以在其中放置条件 3。
例如 Z2=OR(U2>0;U2;V2)
.
此公式的结果是 TRUE
或 FALSE
。
2。然后您可以将条件 3 基于新列
中的值现在你的SUMIFS
公式可以是:
=SUMIFS((Y:Y;B:B;"15*";T:T;">0";Z:Z;TRUE)
我在你的示例中检查过这个并且它有效。