Excel - 计算其值满足复杂条件但没有辅助列

时间:2016-10-31 05:50:42

标签: excel excel-formula

假设我有4列A,B,C和D,其中每列有100行随机整数(比如介于1和10之间)。

我希望能够计算满足某个复杂公式条件的行数,例如

  

(B / A> D / C)&& (B> D)

我知道我可以添加另一个(帮助)列E来保存每行的条件值,然后对该列执行COUNTIF,但我真的想避免这样做可能,因为我的电子表格中有很多4列的组,我必须添加其他列。我知道我也可以隐藏这个额外的列,但我真的只是想尽可能避免这种开销。

我似乎找不到任何Excel引用,其中COUNTSUM公式允许用户输入基于公式的条件以包含/排除计数总计中的行。

有没有办法直接对4列中的现有数据计算匹配的行?

2 个答案:

答案 0 :(得分:2)

您可以使用数组公式。例如:

 =SUM(IF(A1:A17/B1:B17>C1:C17/D1:D17,1,0))

可能是A / B所在的所有行> C / d

使用Ctrl + Shift + Enter输入公式 - 它应显示在公式栏中:

{=SUM(IF(A1:A17/B1:B17>C1:C17/D1:D17,1,0))}

(Excel将为您添加大括号)

答案 1 :(得分:2)

延长蒂姆的答案 -

为了在数组公式中实现AND条件,您可以使用嵌套的IF语句。

如果您考虑AND声明:

  

X和Y

如果X和Y都为真,则评估为TRUE。因此,这个伪公式相当于AND

  

如果(X,IF(Y,1,0),0)

允许您使用此公式:

=SUM(IF(B2:B11/A2:A11>D2:D11/C2:C11,IF(B2:B11>D2:D11,1,0),0))

实现你问题中的逻辑,即

  

(B / A> D / C)&& (B> D)

与Tim的答案相似,你需要输入 Ctrl + Shift + Enter 以获得所需的结果。

样品:

enter image description here