本帖最后由 Mas_T_er 于 2012-7-4 16:17 编辑
有人的地方就有江湖,有江湖就有排名,要排名就得有武器,所以百晓生用兵器谱排名出天下英雄...
在工作、生活中,大家常常用excel做出各种报表来方便工作,让成果更加直观的被其他人接受,以及完成BOSS 的任务...
报表中汇集了各种各样的项目,项目之下又有种种的数据记录,或明细,或总计.当不同地方,不同人在不同时间发生的各种 或明细,或总计的事项时候,就很有可能要有 “名次” 这一结果,而排名次的依据各有不同,可能是看谁花费多,看谁赚的多,等等..。具体什么作为依仗来排出想要的名次,就要看各自的需求了...转入正题
多数情况下,都是对 总成绩 总分 总销售额 总费用额 这一类 进行排名,以下以“成绩”为例.
excel :
第一种: RANK 函数
如 图中所示在 G2单元格,即需要显示排名名次的单元格处 填写公式如 =rank(f2,$f$2:$f$9,0) ,然后下拉至最后一个需要排名的单元格 书写缘由参照下面两个截图
第二种:COUNTIF 函数
如 图中所示在 G2单元格,即需要显示排名名次的单元格处 填写公式如 =COUNTIF($F$2:$F$9,">"&F2)+1 ,然后下拉至最后一个需要排名的单元格 书写缘由参照下面两个截图 以上两种排名方法均为美式排名,即当有相同分数出现的时候,显示相同排名,并占位,然后在继续下一个较小名次。例如 如图可以看出 排出的成绩是1.2.3.4.4.6.7.8 而出现相同分数 多数情况下在我国需要的排名方式是 1.2.3.4.4.5.6.7 即 中国式排名 Excel(中国式排名): 方法一: 在G2中输入如上图的公式=SUM(IF($F$2:$F$9>F2,1/COUNTIF($F$2:$F$9,$F$2:$F$9)))+1 后按Ctrl + Shift + Enter三键结束,即可出现数组公式 的标志 ” { } ” ,不需要手动输入,下拉复制公式即可得出其余的排名.在图中可以看出 我们想要的排序方式,以下还有几种方法,有兴趣的可以试着做一下. 方法二:
方法三:
方法四:
方法五:
以上是在单元格当中直接输入函数公式 达到排名的效果,下面的是在运用excel SQL 环境下 在数据透视表中 生成用中国式排名 与 美式排名的方法. 数据源
EXCEL SQL (美式排名)
SQL 语句 select *,(select count(*)+1 from [Sheet1$]b where a.总成绩<b.总成绩 ) as 排名 from [Sheet1$]a EXCEL SQL (中国式排名)
SQL 语句 select (select count(总成绩) from (select distinct 总成绩 from [Sheet1$] )b where b.总成绩>=a.总成绩) as 排名,* from [Sheet1$]a 二者对比图片
该贴已经同步到 Mas_T_er的微博 |