excel按月份,按年级统计不重复的人头数,求大神解答

=SUMPRODUCT(($A$2:$A$10=B$12)*($C$2:$C$10=$A14)*(1/COUNTIF($B$2:$B$10,$B$2:$B$10))),使用这个公式的话。如何B列中存在空白的单元格公式就无法计算,如如B9,B10空白没填 后面就无法计算了

方法/步骤
首先介绍一下,在excel中统计各班在年级前xx名中所占人数需要用到的函数——sumproduct,sumproduct常用的功能有两个,一个是返回相应的区域或数组乘积的和,另一个就是我们今天要用到的多条件计数。

首先,打开年级成绩名次表

在1班所对应人数的单元格中输入“=SUMPRODUCT((C2:C101=G2)*1)”按回车,即得出1班在年级前100名中所占的人数。

在“=SUMPRODUCT((C2:C101=G2)*1)”中C2:C101表示前一百名学生所在班级区域,G2表示班级,C2:C101=G2的结果是C2:C101区域中等于G2的返回值为true,不等于G2的返回false,true表示1,false表示0,(C2:C101=G2)*1中乘以1的目的是使由true和false组成的数组变为由1和0组成的数组,=SUMPRODUCT((C2:C101=G2)*1)就将刚才由0和1组成的数组全部相加,这就得出了G2班中在年级100名中所占的人数。

然后把鼠标定位在H2单元格的函数“=SUMPRODUCT((C2:C101=G2)*1)”中的C2上按F4,使相对数值C2变为绝对数值$C$2,同样C101变为$C$101,按回车确认。

最后,把鼠标放在H2单元格的右下角向下拖动,即可自动填充其它班级在年级100名中所占的人数。

当然如果想求前50名中各班所占的人数,只需将原来“=SUMPRODUCT((C2:C101=G2)*1)”中C2:C101的范围进行更改即可。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2016-05-20

在B14中输入或复制粘贴下列公式

=SUMPRODUCT(($A$2:$A$10=B$12)*($C$2:$C$10=$A14)*(1/COUNTIF($B$2:$B$10,$B$2:$B$10)))

右拉填充,下拉填充

追问

这个公式目前还有问题是,我是需要实时的数据,现在是5月份,如果6月份的数据没填进去的话,公式不会计算。

追答

没关系 我是为了与你的表格一致,才这样做的。
实际上汇总数据,可移动到D列之后。
公式引用范围稍做调整即可

追问

如果B2单元格子没填,B14单元格就无法计算。只要引用中B2-B10中有单元格没填,就不会计算,我要的结果是这些有填的可以统计,没填的不参与统计,难题就在这里了。

本回答被提问者和网友采纳