
HI,大家好,我是偏爱函数公式,爱用Excel图表管理仓库的大叔Mr赵~
今天要分享的案例是如何统计在多个间断区间条件下的个数 。
如下图,要计算的是区域「B2:F21」内符合多个条件的数据个数 。条件分别为位于区间[1000,1150]、[2000,2250]、[4000,4450]、[6000,6650]、[10000,11050]的数据个数 。

下面介绍两种函数方法解决这个问题:
? COUNTIFS函数法 。
在H8单元格输入如下公式:
=SUM(COUNTIFS(B2:F21,">="&H2:H6,B2:F21,"<="&I2:I6))▲ 左右滑动查看
【如何统计在多个间断区间条件下的个数?】效果如下图:

公式解析:
首先用COUNTIFS函数分别统计5个区间符合条件的个数,返回的结果是数组{4;1;8;2;5};
然后用SUM函数对上面的结果数组求和 。
我们还可以把公式写成:
=SUM(COUNTIFS(B2:F21,{">=",">"}&H2:I6)*{1,-1})▲ 左右滑动查看

用COUNTIFS函数同时统计大于等于区间最小值 , 和大于区间最大值的个数,返回数组{98,94;89,88;77,69;56,54;28,23};
用{1,-1}各自相减(大于区间最小值个数减去大于区间最大值个数),得到数组{98,-94;89,-88;77,-69;56,-54;28,-23};
最后用SUM函数求和 。
? FREQUENCY函数法 。
=SUM(INDEX(FREQUENCY(B2:F21,H2:I6-{1,0}),{2,4,6,8,10}))▲ 左右滑动查看

首先用FREQUENCY函数统计,被10个数字分隔成的11个连续区间个数;
然后用INDEX函数把第2、4、6、8、10这5个区间统计的个数找出来;
最后用SUM函数对这5个区间的个数求和 。
如果你有更好的方法,不妨一起讨论!
