问题场景


  • 需求不同根据总分出排名(从大到小100分、100分、99分、98分、97分),排名需求:

    • 第一种排名:第1名,第2名,第3名,第4名,第5名;

    • 第二种排名:第1名,第1名,第3名,第4名,第5名;

    • 第三种排名:第1名,第1名,第2名,第3名,第4名(中国式排名,下期内容);

场景一


  • 第一种排名:排名不重复,有N名同学,从1依次排到N。

    • 给每行数据添加【序号或编号】要连续不能间断,经常用到。

目标


  • 按要求给出每位同学的排名,且名次不重复。N名同学,排名1至N。

解决方案


用WPS自带排序功能实现

  • 第一步在【开始】选项卡下选中J列总分列(移到【J】单击),下图为选中效果,再点击【排序】下的【降序】排列。

  • 第二步:出现弹框,选中扩展选定区域总分单元格所在行的数据会根据总分的排序一起排序,而不是只排序当前选中区域),点击【排序】。

  • 第三步:在排名F2单元格内输入1,选中F2单元格,鼠标移到F2单元格的右下角,出现实心的黑色【+】号,双击填充。

  • 如果填充都是1(这是因为默认复制单元格填充,可在设置为填充序列,可BaiDu,不在此处介绍),则可以在F2填1,F3填2,同时拉选F2和F3单元格,鼠标移到F3单元格的右下角,出现实心的黑色【+】号,双击填充。

  • 第四步:最后结果。

场景二


  • 第二种排名:有相同数值排名,名次并列,会占用名次,之后排名不会顺延,如有2个并列第2,则下一个名次就是第4,并无第3名

目标


  • 按要求给出每位同学的排名,有并列排名,占用名次,N名同学,排名1到N,如果有相同数值,则名次不连续。

解决方案


用RANK函数实现

  • 函数解释:
=Rank(number,ref,[order])
# number:需要找到排位的数字。
# ref:数字列表数组或对数字列表的引用。Ref 中的非数值型值将被忽略。
# Order :指明数字排位的方式,0是对ref降序排列,1是对ref升序排列。
  • 第一步:在F2单元格英文状态下输入:=RANK(J2,$J$2:$J$16,0)。

  • 第二步:鼠标选中F2单元格,并移到F2单元格右下角,出现实心的黑色【+】,双击填充此公式。

  • 第三步:F列排名结果,因为有两个并列第7名,则之后是第9名。

注意


  • 公式中用到了相对引用和绝对引用,关于引用请参考前几节内容;

  • 如果想将新出的排名从1到N按照升序排列,则可参考方法场景一的方案对F列【排名列】升序排列或者J列【总分列】降序排序,即可实现,结果如下图:

总结


  • 实际业务场景复杂、需求多变时,如果不能一次性解决问题,可择优或结合使用,多尝试,办法总比困难多。

Excel-RANK函数排名与拓展的更多相关文章

  1. EXCEL——排序函数RANK,6种花式使用技巧

    我们在实际工作中,常常把RANK函数用于对一列数据的基本排序,即从大到小的排序方法,那你还知道它的其他什么用法吗? 今天就给大家系统的分享下RANK函数的用法,分享的内容主要为以下这6种技巧. 1.升 ...

  2. 在MySQL中实现Rank高级排名函数【转】

    MySQL中没有Rank排名函数,当我们需要查询排名时,只能使用MySQL数据库中的基本查询语句来查询普通排名.尽管如此,可不要小瞧基础而简单的查询语句,我们可以利用其来达到Rank函数一样的高级排名 ...

  3. 在MySQL中实现Rank高级排名函数

    MySQL中没有Rank排名函数,当我们需要查询排名时,只能使用MySQL数据库中的基本查询语句来查询普通排名.尽管如此,可不要小瞧基础而简单的查询语句,我们可以利用其来达到Rank函数一样的高级排名 ...

  4. 计总与排名SUM和RANK函数

    准备一些数据: CREATE TABLE [dbo].[SalesPerformance]( ,) NOT NULL, ) NOT NULL, [OrderDate] [DATE] NULL, ,) ...

  5. Excel常用函数大全

    1.ABS函数  函数名称:ABS  主要功能:求出相应数字的绝对值.  使用格式:ABS(number)  参数说明:number代表需要求绝对值的数值或引用的单元格.  应用举例:如果在B2单元格 ...

  6. SQLServer学习笔记<>.基础知识,一些基本命令,单表查询(null top用法,with ties附加属性,over开窗函数),排名函数

    Sqlserver基础知识 (1)创建数据库 创建数据库有两种方式,手动创建和编写sql脚本创建,在这里我采用脚本的方式创建一个名称为TSQLFundamentals2008的数据库.脚本如下:   ...

  7. MySQL之实现Oracle中的rank()函数的功能

      假设表格为student, 数据如下:   我们要在MySQL中实现Oracle中的rank()函数功能,即组内排序,具体来说: 就是对student表中按照课程(course)对学生(name) ...

  8. oracle 分组中排序(rank函数)

    需求: 查询每个供应商在每个类型产品销售的top50中有多少 分析: 1.查询,以指定字段(供应商.产品类型)分组,取每个分组的前50行,查看每个供应商的数量 2.使用rank函数给每个供应商.每个类 ...

  9. 浅谈Excel开发:五 Excel RTD函数

        上文介绍了Excel中的UDF函数,本文介绍一下同样重要的RTD函数.从Excel 2002开始,Excel引入了一种新的查看和更新实时数据的机制,即real-time data简称RTD函数 ...

随机推荐

  1. 【ACwing 93】【模版】非递归实现组合型枚举——模拟递归

    (题面来自ACwing) 从 1~n 这 n 个整数中随机选出 m 个,输出所有可能的选择方案. 输入格式 两个整数 n,m ,在同一行用空格隔开. 输出格式 按照从小到大的顺序输出所有方案,每行1个 ...

  2. zk与eureka区别

    cap永远的神!

  3. 02-Python里字符串的常用操作方法--split()函数和join()函数

    1.split() --分割,返回一个列表, 会丢失分割字符 实例: my_str = 'you and me and he' list01 = my_str.split('and') list02 ...

  4. Robot Framework接口自动化案例分享⑦——Jenkins持续集成

    一.RobotFramework插件安装 1.Jenkins首页->系统管理->插件管理->可选插件-> 2.搜索robot,点击直接安装 二.任务参数配置 1.新建任务 Je ...

  5. IntelliJ IDEA 2020.3正式发布,年度最后一个版本很讲武德

    仰不愧天,俯不愧人,内不愧心.关注公众号[BAT的乌托邦],有Spring技术栈.MyBatis.JVM.中间件等小而美的原创专栏供以免费学习.分享.成长,拒绝浅尝辄止.本文已被 https://ww ...

  6. springsecurity实现前后端分离之jwt-资料收集

    https://www.jianshu.com/p/5b9f1f4de88d https://www.jianshu.com/p/725d32ab92f8 https://blog.csdn.net/ ...

  7. PyQt(Python+Qt)学习随笔:QTreeWidget中获取可见项视口位置矩形的visualItemRect方法

    老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 树型部件的visualItemRect方法可以返回参数指定项在视口的位置矩形. QRect visu ...

  8. Flutter · Python AI 弹幕播放器来袭

    AI智能弹幕(也称蒙版弹幕):弹幕浮在视频的上方却永远不会挡住人物.起源于哔哩哔哩的web端黑科技,而后分别实现在IOS和Android的app端,如今被用于短视频.直播等媒体行业,用户体验提升显著. ...

  9. mysql游标cursor与for循环

    delimiter // create procedure p2() begin declare row_id int DEFAULT 0; declare row_num int DEFAULT 0 ...

  10. Photoshop 2020特别版,内置多款实用插件,功能强大

    Adobe Photoshop 2020特别21.2.1.265版 组件精简 同时优化软件配置,添加多款实用强大的插件,具体详细修改精简内容如下: -精简运行库及更新组件: -精简创意云Creativ ...