FREQUENCY函数的精彩应用( 二 )


=SUM(–(FREQUENCY(A1:A8,A1:A8)=1))
公式计算仅出现1次的值之和 。

FREQUENCY函数的精彩应用

文章插图
图3
如果要统计的单元格区域中不仅有数字,还有文本,如下图4所示,可以看出,不重复的值为1、s、c共3个 。公式为:
=SUM(–(FREQUENCY(IF(A1:A10<>””,MATCH(“~”& A1:A10,A1:A10 & “”,0)),ROW(A1:A10)-ROW(A1)+1)=1))
这是一个数组公式 。
FREQUENCY函数的精彩应用

文章插图
图4
上述两个公式的详细过程参见示例1,本例中只是将示例1中的大于号改成了等于号 。
示例3:统计满足条件的不同值的个数
如下图5所示,要统计单元格区域A1:A10中的内容是“是”对应的单元格B1:B10中不同值的个数,可以看出,这些值是1、2、a、3,共有4个不同值 。公式为:
=SUM(–(FREQUENCY(IF((A1:A10=C2)*(B1:B10<>””),MATCH(“~”& B1:B10,B1:B10 & “”,0)),ROW(B1:B10)-ROW(B1)+1)>0))
这是一个数组公式 。
FREQUENCY函数的精彩应用

文章插图
图5
这个公式与上例中的公式相似,只是在公式中包含(A1:A10=C2)*从而添加了一个“与”条件 。
示例4:统计满足条件的不重复值的个数
如下图6所示,要统计单元格区域A1:A10中的内容是“是”对应的单元格B1:B10中不重复值的个数,可以使用数组公式:
=SUM(–(FREQUENCY(IF((A1:A10=C2)*(B1:B10<>””),MATCH(“~”& B1:B10,B1:B10 & “”,0)),ROW(B1:B10)-ROW(B1)+1)=1))
FREQUENCY函数的精彩应用

文章插图
图6
示例5:出现最多的数值出现的次数
如下图7所示,我们可以看出,在单元格区域A1:A10中1出现的次数最多,共出现了5次,使用下面的公式可以得到这个结果:
=MAX(FREQUENCY(A1:A10,A1:A10))
FREQUENCY函数的精彩应用

文章插图
图7
公式中,FREQUENCY(A1:A10,A1:A10)返回{5;0;3;2;0;0;0;0;0;0;0},MAX函数从这个数组中返回最大值5 。
如果单元格区域中不仅有数字还有文本,如何统计最多的数值出现的次数呢?如下图8所示,出现次数最多的是2、a、3,都是2次 。
FREQUENCY函数的精彩应用

文章插图
图8
数组公式为:
=MAX(FREQUENCY(IF(A1:A10<>””,MATCH(“~”& A1:A10,A1:A10 & “”,0)),ROW(A1:A10)-ROW(A1)+1))
示例6:出现最少的数值出现的次数
如下图9所示,要统计单元格区域A1:A10中出现最少的数值出现的次数,可以看出,出现最少的数值是3、5、6,都是1次 。数组公式为:
=MIN(IF(FREQUENCY(A1:A10,A1:A10)>0,FREQUENCY(A1:A10,A1:A10)))
FREQUENCY函数的精彩应用

文章插图
图9
因为要忽略数组中可能出现的0,因此公式比统计出现最多的数值出现的次数要复杂一些 。
公式中FREQUENCY(A1:A10,A1:A10)返回{5;0;2;1;0;0;1;0;0;1;0},因此公式转换为:
=MIN(IF({5;0;2;1;0;0;1;0;0;1;0}>0,{5;0;2;1;0;0;1;0;0;1;0}))
接着,公式评估为:
=MIN({5;False;2;1;False;False;1;False;False;1;False})
由于MIN函数忽略逻辑值,因此返回值1 。
正如前面的例子中一样,如果单元格区域中还包含文本呢?如下图10所示,单元格区域A1:A10中的1、s、c都只出现了1次,数组公式为:
=MIN(IF(FREQUENCY(IF(A1:A10<>””,MATCH(“~”& A1:A10,A1:A10 &””,0)),ROW(A1:A10)-ROW(A1)+1),FREQUENCY(IF(A1:A10<>””,MATCH(“~”& A1:A10,A1:A10 & “”,0)),ROW(A1:A10)-ROW(A1)+1)))

推荐阅读