最新历史版本 :并列不跳号排名 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 概述编辑

1.1 问题描述

常见的排名方式有如下几种:



第一种,即排名1连贯不间断的排名可以参考:使用公式进行不间断排名
第二种,即排名2并列排名后,后续排名跳号,详情参见:使用公式进行并列跳号排名
第三种,即排名3并列排名后,后续排名不跳号,详情参见本文 

1.2 解决思路

求出所有比自己大的数,去除重复后统计个数,然后加 1,则是不跳号的排名数。

2. 示例编辑

2.1 模板设计

1)创建内置数据集如下:

2020-12-30_20-19-31.jpg

2)报表设计如下

222

并将成绩 A2 单元格数据设置成「列表」,如下图所示:

3)在B2单元格输入公式:SORT(A2)或者COUNT(UNIQUEARRAY(A2[!0]{A2 > $A2}))+1,如下图所示:

2020-12-30_20-18-00.jpg

公式说明:

步骤
公式公式说明
求 A2 单元格扩展出的所有成绩A2[!0]Cellx[!0]:获取单元格 Cellx 扩展出来的所有值
求 A2 单元格扩展得到的所有成绩中比当前成绩大的成绩值

A2[!0]{A2 > $A2} 

Cellx[!0]{条件表达式}:根据条件表达式获取单元格 Cellx 扩展出来的部分值
去掉上一步得到的成绩集合中重复的成绩UNIQUEARRAY(A2[!0]{A2 > $A2})UNIQUEARRAY(array):去掉数组中重复的元素
统计上一步得到的成绩集合中成绩的个数+1作为当前成绩的排名COUNT(UNIQUEARRAY(A2[!0]{A2 > $A2}))+1COUNT(value1,value2,…):计算数组或数据区域中所含项的个数

2.2 效果预览

1)PC 端

保存模板,选择分页预览,如下图所示:

2020-12-30_20-20-35.jpg

2)移动端

1609330944678268.jpg

3. 模板下载编辑

已完成模板,可参见:%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\SpecialSubject\function\使用公式进行并列不跳号排名.cpt

点击下载模板:使用公式进行并列不跳号排名.cpt