排名函数RANK救不了你,试试万能王SUMPRODUCT

一般在算排名的时候 , 都是用RANK函数 , 但这个函数并非万能 。

排名函数RANK救不了你,试试万能王SUMPRODUCT

文章插图
 
现在按照语文的分数进行排名 , 这就是最常用的排名方法 。
=RANK(C2,$C$2:$C$13)
排名函数RANK救不了你,试试万能王SUMPRODUCT

文章插图
 
上面是按全年级排名 , 如果想按照班级排名呢?
这时RANK函数就用不上了 , 需要用到万能王SUMPRODUCT 。
在很多人眼中 , 这个就是条件求和的函数 , 比如现在按班级求总分 。
=SUMPRODUCT(($A$2:$A$13=G2)*$C$2:$C$13)
排名函数RANK救不了你,试试万能王SUMPRODUCT

文章插图
 
函数语法:
=SUMPRODUCT((条件区域=条件)*求和区域)
这个之所以好用 , 就是可以结合很多函数 , 比如现在要统计每个姓氏的总成绩 。
=SUMPRODUCT((LEFT($B$2:$B$13,1)=G8)*$C$2:$C$13)
排名函数RANK救不了你,试试万能王SUMPRODUCT

文章插图
 
其实 , 这个函数还可以做排名 。
=SUMPRODUCT(($A$2:$A$13=A3)*(C3<=$C$2:$C$13))
排名函数RANK救不了你,试试万能王SUMPRODUCT

文章插图
 
($A$2:$A$13=A3)就是判断是不是等于本班级的 。
【排名函数RANK救不了你,试试万能王SUMPRODUCT】(C3<=$C$2:$C$13)就是判断这个分数小于等于多少个数 。比如114、111、103、115这4个数 , 114小于等于2个数(114和115) , 所以排名第2 。再比如115小于等于1个数(115也就是本身) , 所以排名第1 。
以上 , 就是排名公式的由来 。
当然 , 除了以上2种最常见的排名 , 有并列排名:
=RANK(D2,D$2:D$13)
班级排名:
=SUMPRODUCT((A$2:A$13=A2)*(D2<=D$2:D$13))
无并列排名:
=RANK(D2,D$2:D$13)+COUNTIF(D$2:D2,D2)-1
中国式排名 , 这个是数组公式 , 需要按Ctrl+Shift+Enter结束 。
=COUNT(1/FREQUENCY(D$2:D$13,IF(D$2:D$13>=D2,D$2:D$13)))
加权排名:
=SUMPRODUCT(–(D$2:D$13+C$2:C$13%>=D2+C2%))

    推荐阅读