按照总成绩从低到高排名
创作者俱乐部成员
网上看到这样一道题,按照总成绩从低到高排名,如下图:
思索半天,想到两种方法:
求出总成绩建立辅助列,然后用rank函数排名
很显然这个方法很简单,rank函数也是比较常见的排名函数,那么我们怎么用一个公式计算出排名呢?
没想到特别好的方法,后来利用match,large,row函数嵌套勉强完成。
这个公式有个缺点,假如某个学生某科目显示缺考,将出现错误,后来根据其他大佬分享的公式受到启发,用iferror函数屏蔽错误值解决这个问题。
这样公式写下来比较繁琐,于是求助WPS社区群,看看大佬们有没有更好的方法。
3.新路大佬分享的公式:
=MATCH(MMULT(IFERROR(--C2:F14,0),ROW($1:$4)^0),SORT(MMULT(IFERROR(--C2:F14,0),ROW($1:$4)^0),,1),0)
这个公式研究了半天,终于弄明白啦,IFERROR(--C2:F14,0)这一步把文本屏蔽掉,替换成0,
MMULT(IFERROR(--C2:F14,0),ROW($1:$4)^0)这一步把每个人的总成绩求出来,
SORT(MMULT(IFERROR(--C2:F14,0),ROW($1:$4)^0),,1)按总成绩从低到高排序。
最后用match函数匹配位置:MATCH(MMULT(IFERROR(--C2:F14,0),ROW($1:$4)^0),SORT(MMULT(IFERROR(--C2:F14,0),ROW($1:$4)^0),,1),0)
动图如下:
4.Boyuan大佬的分享:=LET(s,BYROW(C2:F14,SUM),m,SMALL(s,SEQUENCE(ROWS(s))),XMATCH(s,m)),
这个公式我勉强能看明白,给大家讲不清楚。动图如下:
5.根据两位大佬的分享,想到这个公式:=MATCH(BYROW(C2:F14,SUM),SORT(BYROW(C2:F14,SUM),1,1),0)
对于这个问题,大家还有更好的解决方法吗?欢迎留言分享!
我是墨云轩,热衷分享wps办公小技巧,边学习,边分享,每天进步一点点!感谢你的阅读!
wps版本如下图:
WPS函数专家
WPS函数专家