如下图是某班级成绩表,现在我们想要按照成绩大小进行排名。
在D2单元格输入公式=SUMPRODUCT((C$2:C$13>=C2)/COUNTIF(C$2:C$13,C$2:C$13))
然后将公式下拉填充到底即可完成。
下面跟大家简单介绍一下这个公式,首先是SUMPRODUCT函数,它是在给定的几组数组中,将数组间对应的元素相乘,并返回乘积之和。语法形式为SUMPRODUCT(array1, [array2], [array3], …)。
接着我们看看【(C$2:C$13>=C2)】这一部分,它的作用是判断C2:C13单元格区域中的成绩是否大于等于当前的C2成绩,如果成立返回TRUE,否则返回FALSE。返回结果为{TRUE;TRUE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE}
其次【COUNTIF(C$2:C$13,C$2:C$13)】这一部分,它的作用是统计C2:C13单元格区域中各个单元格数据存在的个数,如C2单元格99分数据在C2:C13单元格区域中有两个,C4单元格82分出现一次。它的返回结果为{2;2;1;2;2;1;2;1;1;1;1;2}。
最后将{TRUE;TRUE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE}和{2;2;1;2;2;1;2;1;1;1;1;2}这两组数据进行以一一对应的相除计算,如第一个TRUE/2,第二个TRUE/2,第三个FALSE/1……(在Excel计算中,TRUE相当于1,而FALSE相当于0。)
声明:所有白马号原创内容,未经允许禁止任何网站及个人转载、采集等一切非法引用。本站已启用原创保护,有法律保护作用,否则白马号保留一切追究的权利。发布者:白马号,转转请注明出处:https://www.bmhysw.com/article/17968.html