![](/img/trans.png)
[英]Countif the Result of Subtracting Two Arrays Exceeds a Certain Value in Excel
[英]Excel COUNT() vs COUNTIF() with arrays
我认为这应该是一个简单的问题,但由于某种原因,我无法在任何地方找到解决方案。
我在excel中有一个冗长的公式,最终会返回一个由四个项组成的数组 - 即{1,2,0,0}。 我想计算结果数中有多少大于零。
当我在这个结果上使用=COUNT({1,2,0,0})
时,我得到了预期的答案4.但是当我尝试使用=COUNTIF({1,2,0,0}, ">0")
它弹出一个错误,说我的公式有问题。
有什么我做错了吗? COUNTIF()是否有等效的数组?
看来COUNTIF
函数仅适用于范围,而COUNT
函数可以使用数组。
尝试一下SUMPRODUCT
。 下面是我用来测试公式的示例的略微扩展形式。 它基本上检查数组中的每个值是否大于0,如果是,则为其赋值1.然后SUMPRODUCT
通过并将所有1加起来给出大于0的值的总数。
=SUMPRODUCT(IF({1,0,3,0,5,0,0,6,9,9,0,7,0}>0,1,0))
可能最简洁的方法是将验证检查返回的TRUE
或FALSE
值转换为INT
函数的数字。 TRUE
转换为1
, FALSE
转换为0
。 然后SUM
的1和0。
=SUM(INT({1,2,0,0}>0))
或者正如Barry Houdini指出的那样,您可以使用以下方法将布尔值强制转换为int:
=SUM(({1,2,0,0}>0)*1)
要么:
=SUM(({1,2,0,0}>0)+0)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.