admin 管理员组文章数量: 1086019
2024年3月29日发(作者:前端开发需要学什么框架)
方法一:RANK
应在总分后面的单元格输入如:=rank(E2,E$2:E12) 就可以了
这个方法最简单,直接使用rank函数,如有第五名和第六名相等时,有两个第五名,
则下一个显示第七名(没有第六名)。
在欲显示排名的列输入=RANK(D25,$D$25:$D$36) 则按降序排列,
=RANK(D25,$D$25:$D$36,1)则按升序排列。
方法二:COUNTIF
方法简单,直接使用countif函数:
1、在欲显示排名的列输入=COUNTIF($N$25:$N$36,">="&N25)则按降序排列,
=COUNTIF($N$25:$N$36,"<="&N25)则按升序排列。
如有第五名和第六名相等时,有两个第六名(没有第五名),则下一个显示第七名。
2、在欲显示排名的列输入=COUNTIF($N$25:$N$36,">"&N25)+1则按降序排列,
同上,改用小于号<即可。
如有第五名和第六名相等时,有两个第五名(没有第六名),则下一个显示第七名。
方法三:LOOKUP
这个比较笨的方法,但也好理解,可以使用于显示排名名次且不局限于数字形式,如
可显示冠军、亚军、第三名等等,如果有第五名和第六名相等时,可以有两个第五名可人
工来定下一个是6还是7,主要看怎么定义,最大优点在于显示结果灵活,分3步来:
1、列F(随便找一个临时列,如果看着不爽干脆做好后直接隐藏)中输入
=SMALL($D$1:$D$20,ROW(A1)) ,把D1:D20中的数据从小到大排序,其中的绝对引
用是为了使用填充柄方便操作,把排序的范围定在D1:D20,ROW(A1)取A1的行号1
(可以取任列意行号,主要偶看A列开心顺意用A,如果用该函数从大到小排序则为把
ROW(A1)替换成count($D$1:$D$20)-ROW(A1)+1即可)。
2、在旁边找一空列 列H,按大小进行排序,这个就是我们希望排序排名是显示的(如
果用数字1、2、3、4显示排名则可以用省略这一步,直接引用行号)。这个也可用IF来
排名:H1中输入1,然后在H2中输入=IF(F2=F1,H1,H1+1) ,如有第五名和第六名相等
时,有两个第五名,则下一个依然显示第六名,导致最后结果少一个。
3、在欲显示排名的列输入=LOOKUP(D1,$F$1:$F$20,$H$1:$H$20) ,LOOKUP为
查找函数,该语句作用为在$F$1:$F$20中查找到与D1相等的值,并返回$H$1:$H$20
中相应行的值,注:$H$1:$H$20的类型不限制,但$F$1:$F$20这一段数组只支持从小
到大递增排序,否则会出错。
方法四:SUMPRODUCT
这个方法比较简单,只要一个公式即可,但偶不明白他是怎么计算的,缺点是排名显
示叫单一,如有第五名和第六名相等时,有两个第五名,则下一个依然显示第六名,导致
最后结果少一个,具体:
版权声明:本文标题:excel中按某组数据按大小进行自动排序排名 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://roclinux.cn/b/1711660790a604099.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论