概述
在电子表格中需通过电子表格公式和Excel公式结合可以实现排名。
示例
从下图,我们希望求分组内的排名。即求"产品名称"对应"销售量"在"产品类别"内的排名。比如,"糙米"对应的销售量为687,在"谷类/麦片"这个类别中的销售排名为3.
实现步骤
1.创建数据集
新建数据集,包含三个字段:产品类别、产品名称和销售量。预览数据如下:
数据集相关设置项请参考:数据集定义
2.创建电子表格
在Excel中登录服务,新建电子表格。并绘制表样如下:
3.拖拽字段
在右侧数据集面板中找到步骤1中的查询,将字段拖拽到对应的单元格,并设置扩展属性。如下:
4.设置排名
在E3单元格中输入公式:=RANK(D3,SSR_GetSubCells(D3,B3))
此公式表示,取D3单元格对应的值,在其父格B3对应D3的单元格集合中的排名。
函数说明
Rank:是标准的Excel函数
- 函数原型:RANK(number,ref,order)。Number为需要找到排位的数字。Ref为数字列表数组或对数字列表的引用。Ref 中的非数值型参数将被忽略。Order为一数字,指明排位的方式。
- 函数功能:返回一个数字在数字列表中的排位。
- 函数示例:" RANK(A2,A1:A5,1) "。
SSR_GetSubCells:产品自带函数。
- 函数原型:SSR_GetSubCells(取值单元格,父格单元格)
- 功能说明:根据父格获取扩展得到的所有单元格。
- 参数说明:取值单元格为取得数据的单元格序号;父格单元格为设置父格的单元格序号。
- 函数示例:= sum(SSR_GetSubCells(C4,A4)),表示获取父格A4扩展出来的C4单元格的所有值
计算公式相关设置项请参考:公式函数
5.发布预览
点击工具栏上的“发布”按钮,保存电子表格,并预览如下:
资源下载
报表资源:维内排名.xml(注:该资源基于内置的Northwind数据库使用)