在 Excel 中,Rank函数用于实现一个数字在指定数字列表中的排位,并且可以通过拖动的办法实现对整个数字列表的自动排序。Rank函数共有三个参数,前两个为必选项,后一个为可选项;如果省略可选项,将默认按降序排序。Rank函数怎么用呢?文章先介绍Rank函数的语法,再用四个由浅入深的具体实例分享Rank函数的使用方法;四个实例分别为无重复数字的自动排序、重复数字并排的自动排序、重复数字顺排的自动排序和Rank函数与OffSet函数组合实现分段排序,实例操作所用版本均为 Excel 2016。

一、Rank函数语法

1、表达式:RANK(Number, Ref, [Order])

中文表达式:RANK(要排序的数字, 数字列表, [排序方式])

2、说明:

A、Ref 为数字列表数组或对数字列表的引用,如果有非数字将被忽略。

B、Order 为可选项,用于指定数字的排序方式;如果省略,则默认值为 0,则按降序排序;如果为非 0,则按升序排序。

二、Rank函数怎么用

(一)无重复数字的自动排序

1、假如要对销量按降序排序。选中 G2 单元格,输入公式 =RANK(F2,$F$2:$F$12),按回车,返回 F2 在 F2:F12 中的排位;再次选中 G2,把鼠标移到 G2 右下角的单元格填充柄上,鼠标变为黑色加号后,按住左键,往下拖一直拖到 F12,则所经过单元格都对应 F2:F12 中的数值排好序;操作过程步骤,如图1所示:

2、公式说明:

A、公式 =RANK(F2,$F$2:$F$12) 中,F2 是要排序的数字,是对 F2 的相对引用,往下拖时,会变为 F3、F4、……;$F$2:$F$12 是对 F2 至 F12 的绝对引用,往下拖时,F2 和 F12 都不会自动加 1,即无论拖到哪个单元格都始终返回从 F2 到 F12 的数字列表。

B、公式省略了排序方式 Order,默认按降序排序,F2:F12 中的最大值 982 排序在第一位;如果要按升序排序,可以把 Order 设置为非 0,如设置为 1,则公式变为 =RANK(F2,$F$2:$F$12,1)。

(二)重复数字并排的自动排序

1、假如要对价格按升序排序。把公式 =RANK(E2,$E$2:$E$12,1) 复制到 G2 单元格,如图2所示:

2、按回车,返回 E2 在 E2 至 E12 中的排位,同样用往下拖的方法把其余价格排序,排好后,如图3所示:

3、排在第一的是 65,它是 E2 至 E12 中最小的值,说明排序方式为升序;E2 至 E12 中共有两组重复数字,一组是 89,另一组是 99,两个 89 都排在第 4 位,两个 99 都排在第 6 位,而第 5 位和第 7 位却留空。

(三)重复数字顺排的自动排序

1、同样对价格按升序排序。把公式 =RANK(E2,$E$2:$E$12,1)+COUNTIF(E$2:E2,E2)-1 复制到 G2 单元格,按回车,则返回 E2 在 E2 至 E12 中的排位;用往下拖的方法把其余价格排好序,操作过程步骤,如图4所示:

2、价格中的第一组重复数字 89 分别排到了第 4 位和第 5 位;第二组重数字 99 分别排到了 第 6 位和第 7 位。

3、公式说明:

公式 =RANK(E2,$E$2:$E$12,1)+COUNTIF(E$2:E2,E2)-1 用 CountIf函数统计当前数字在当前单元格之前有几个重复值;例如 COUNTIF(E$2:E2,E2) 统计 E2 在 E2 之前(即 E2)有几个重复数字,统计结果为 1,1 - 1 = 0,即 COUNTIF(E$2:E2,E2)-1 = 0;当拖到 E3 时,COUNTIF(E$2:E2,E2)-1 变为 COUNTIF(E$2:E3,E3)-1,统计 E3 在 E2 至 E3 有几个重复数字,统计结果为 1,COUNTIF(E$2:E3,E3)-1 = 0,则 =RANK(E3,$E$2:$E$12,1)+0=4;当拖到 E4 时,COUNTIF(E$2:E2,E2)-1 变为 COUNTIF(E$2:E4,E4)-1,统计 E4 在 E2 至 E4 有几个重复数字,统计结果为 2,COUNTIF(E$2:E4,E4)-1 = 1,则 =RANK(E4,$E$2:$E$12,1)+1=5。

(四)Rank函数与OffSet函数组合实现分段排序

1、假如要把销量按每段四个数分段排序。把公式 =RANK(F2,OFFSET($F$2:$F$5,INT((ROW()-2)/4)*4,),1) 复制到 G2 单元格,按回车,则返回 F2 在 F2 至 F5 中的排位;用往下拖的方法排好其余数字与其它分段的序;操作过程步骤,如图5所示:

2、公式说明:

A、公式 =RANK(F2,OFFSET($F$2:$F$5,INT((ROW()-2)/4)*4,),1) 用 OFFSET($F$2:$F$5,INT((ROW()-2)/4)*4,) 来实现分段,它是如何实现分段的?我们选择第二个分段的第一个单元格,即 G6 单元格,双击它,它的公式为 =RANK(F6,OFFSET($F$2:$F$5,INT((ROW()-2)/4)*4,),1),如图6所示:

B、其它的都没有变,只有 F2 变为 F6;Row() 用于返回当前行的行号,F6 的行号为 6,即 ROW()-2 = 4,INT(4/4) = 1,1*4 = 4,即 OffSet 变为 OFFSET($F$2:$F$5,4),也就是要往下移 4 行,由于 OffSet函数返回对单元格的引用,所以 OffSet 返回 $F$6:$F$9。

C、Rank 变为 =RANK(F6,$F$6:$F$9,1),也就实现了对第二段 F6 至 F9 数字列表的排序。

提示:由于是从 F2 开始,所以用 ROW()-2,如果从 F1 开始,则用 ROW()-1,其它的以此类推。另外,每个分段有几个数,用 (ROW()-2) 除几,如公式中的 (ROW()-2)/4;用 Int 取整后再乘几也是一样。

计算机排位函数升序是0还是1,Excel中Rank函数排序的方法,包含相同数字按顺序排位和分段排序-excel排序...相关推荐

  1. 计算机成绩表名次用什么函数,使用Excel中Rank函数对学生成绩名次进行排列

    学生成绩的排名,在Excel可以应用数据处理中的升序或者降序的功能而实现,但是如果在已经对学生的学号进行了升序或者降序排列以后,为了确保学生的学号次序不变,而实现学生成绩的名次排列,则需要利用Exce ...

  2. php excel 函数,php实现excel中rank函数功能的方法

    php实现excel中rank函数功能的方法 发布于 2015-10-28 18:54:25 | 77 次阅读 | 评论: 0 | 来源: 网友投递 PHP开源脚本语言PHP(外文名: Hyperte ...

  3. 使用RANK函数按计算机基础的降序求名次,使用Excel中Rank函数对学生成绩名次进行排列...

    学生成绩的排名,在Excel可以应用数据处理中的升序或者降序的功能而实现,但是: 2.成绩表按学号升序的排列:用鼠标左键选中学号至期评成绩,然后用单击菜单栏中的数据选择筛选,得到的按学号升序的排列表, ...

  4. 二级计算机的office用到哪些函数,计算机二级MS office excel中所用函数整理

    <计算机二级MS office excel中所用函数整理>由会员分享,可在线阅读,更多相关<计算机二级MS office excel中所用函数整理(11页珍藏版)>请在人人文库 ...

  5. count的使用计算机,excel中count函数的使用方法步骤图

    在日常工作中,经常需要对含有数值或者内容的单元格数量进行统计,会用到统计函数.count的中文解释是计数,计算,count函数自然也是用来计算数目的,下面小编就教你怎么在excel中使用count函数 ...

  6. 计算机一级vlookup函数的使用方法,电子档Excel中vlookup函数的使用方法(图解详细说明)...

    摘要: 在平时的工作中,相信很多问题在学校学习的难以用在工作当中,但是没学习到的知识点倒是出现在了我们的工作中,本文我将给大家以生动的图解(偷笑)加说明的方式详细介绍Excel中vlookup函数的使 ...

  7. 计算机一级证电子表格函数值怎么算,2017年计算机一级WPS辅导:WPS文字的表格中进行函数公式计算...

    如果我说是在WPS文字文档中的表格能进行函数.公式等计算,不仅要显示在WPS文字中,而且完全不用初少的表格计算插件,还要实现像ET中一样多的公式和函数功能.我是在痴人说梦吗?不,其实WPS Offic ...

  8. 计算机二级excelcountif函数,excel中countif函数的使用方法

    您可能感兴趣的话题: excel中countif函数的使用方法 核心提示:函数COUNT在计数时,将把数值型的数字计算进去! 函数COUNT在计数时,将把数值型的数字计算进去;但是错误值.空值.逻辑值 ...

  9. 计算机中函数counta表示,excel中counta函数的使用方法

    你还在为Excel中counta函数的使用方法而苦恼吗,今天小编教你Excel中counta函数的使用方法,今天,学习啦小编就教大家在counta函数的使用方法. Excel的counta函数的使用方 ...

最新文章

  1. [BZOJ4399]魔法少女LJJ
  2. 【自动化__持续集成】___java___重载
  3. Python 网络服务相关 杂记
  4. Keil编译出现sct(7): error: L6236E: No section matches selector - no section to be FIRST/LAST.报错的解决方法
  5. 欧几里得算法(即辗转相除法)的时间复杂度
  6. Oracle学习 第18天 .NET连接Oracle
  7. [leetcode] 839. 相似字符串组并查集
  8. zabbix---agent安装
  9. 软件开发过程模型(瀑布模型,快速原型模型,螺旋模型)
  10. 均方值-数学期望-方差
  11. 3D着色器(OpenGL)
  12. C#获取汉字拼音或首字母
  13. Qos实验配置-CBQ方式
  14. json 跟着黑马打的代码 但还是undefined。求解,
  15. 金蝶EAS,GUI客户端,编辑界面常用方法,框架方法示例
  16. 【土地评价与土地管理】案例:某地区柑橘种植适宜性评价
  17. 计算机考研英语复试自我介绍范文,考研英语复试自我介绍:自我介绍范文
  18. MyBatis Plus简介和入门案例
  19. 金蝶云星空-重构管理中心与数据库
  20. vc++6.0收发电子邮件(可上传下载附件)

热门文章

  1. 关于字体适配的那些事
  2. 7-12 查验身份证
  3. 开车的人千金难买的知识
  4. springBoot集成H2
  5. Linux系统与windows系统的优缺点
  6. 大数据的属性是什么?如何划分?
  7. MATLAB如何识别吸附——不同时间内的吸附量识别
  8. pads添加工艺边及MARK点
  9. python脚本自动qq签到_python实现虾米音乐自动签到脚本
  10. C语言输入输出各种格式 %+格式符(d o x u e f)