SUMPRODUCT((A$1:A$10>=A1)/COUNTIF(A$1:A$10,A$1:A$10))
这个算式其实是计算在A$1:A$10中大于等于A1的不相同数一共有几个。
如下图:
4和5两个数是符合条件的,计算结果就是2。
在公式中用鼠标使(A$1:A$10>=A1)变黑,按F9;使COUNTIF(A$1:A$10,A$1:A$10)变黑,按F9。
公式变成:
=SUMPRODUCT({TRUE;TRUE;FALSE;FALSE;TRUE;FALSE;FALSE;FALSE;FALSE;TRUE}/{1;3;1;4;3;1;4;4;4;3})
分子数组:>=A1为TRUE,<A1为FALSE
分母数组记录各个数字在A$1:A$10中的个数。例如4只有一个,则在4对应的位置为1;5有3个,则在5对应的位置为3。
再在公式中用鼠标使{TRUE;TRUE;FALSE;FALSE;TRUE;FALSE;FALSE;FALSE;FALSE;TRUE}/{1;3;1;4;3;1;4;4;4;3}变黑,公式变成:
=SUMPRODUCT({1;0.333333333333333;0;0;0.333333333333333;0;0;0;0;0.333333333333333})
因为4,在求和时计入1。
5虽然有3个,在求和时计入3个1/3,也是1。
最后计算结果是2,说明只有4和5两个不同的数字是符合条件的。
有点不明白这个公式是怎么实现的,可不可以拆开解释一下呢,谢谢啦
注意,逻辑值参与算术运算时,TRUE相当于1,FALSE相当于0。