|
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件 ★ 免费下载 ★ ★ 使用帮助★
本帖最后由 cttz 于 2021-6-26 17:43 编辑
默认题主用的不是365版本。
这个很简单,看你的需求,主要是0值怎么处理。
假设名称是A列,数量是B列,排名要在C列生成。
一、如果0要参加排序(同数字并列),公式是 =RANK(B1,B$1:B$8,0),下拉。
效果是:按顺序排出名次,前面是1234,所有的0都是第5。
二、如果0不参加排序的话(其他非0的同数字并列),公式是 =IF(B1<>0,RANK(B1,B$1:B$8,0),""),下拉。其中<>表示不等于。
效果是:按顺序排出名次,前面是1234,所有0不参与排名。
三、如果0要参加排序并且几个0也要不同名次,公式是 =RANK(B1,B$1:B$8,0)+COUNTIF(B1:B$8,B1)-1
效果是:按顺序排出名次,前面是1234,后面4个0分出5678名来。
注意排名(rank)和排序(sort)的区别。排名是只添加代表排名的数字,但不改变原列表的顺序;排序是改变原列表的顺序。
非365版本的话,只有排名函数,没有排序函数!先根据需求用上面的方法列出名次,然后用自带的排序功能进行排序。
|
|