示例
在电子表格中对序号进行降序显示。如下
实现步骤
1.创建数据集
创建数据集,包含两个字段:产品类别和销售量。预览数据如下:
2.创建电子表格
在Excel中登录服务,新建电子表格,并绘制表样如下:
3.拖拽字段
在右侧数据集面板中找到步骤1中的业务查询,将字段拖拽到对应的单元格,并设置扩展属性。如下:
4.设置序号
在D3单元格中输入公式:=COUNTA(SSR_GetSubCells(B3))-SSR_GetIndex(B3)
此公式表示,首先计算B3单元格扩展出来的数据总数,然后将总行数减去当前数据在表格区域中的行数
函数说明
COUNTA:是标准的excel函数
- 函数原型:COUNTA(VALUE1,VALUE2...),Value 为所要计算的值,参数个数为 1 到 30 个。在这种情况下,参数值可以是任何类型,它们可以包括空字符 (""),但不包括空白单元格。
- 函数功能:返回参数列表中非空值的单元格个数。
- 函数示例: =COUNTA(A1:C5)
SSR_GetSubCells:是系统内置函数
- 函数原型:SSR_GetSubCells(取值单元格,父格单元格)
- 功能说明:根据父格获取扩展得到的所有单元格。
- 参数说明:取值单元格为取得数据的单元格序号;父格单元格为设置父格的单元格序号。
- 函数示例: =sum(SSR_GetSubCells(C4,A4)),表示获取父格A4扩展出来的C4单元格的所有值。
=SSR_GetSubCells(B4:C4,A4),表示以A4为父格的B4、C4扩展出来的所有区域。
SSR_GetIndex:是系统内置函数
- 函数原型:SSR_GetIndex(Cellx)
- 功能说明:获得单元格位于某个父格中的位置,以实现序列号。
- 参数说明:Cellx是当前单元格的某个父格,该表达式返回的值是当前单元格在指定父格中的位置。如果Cellx不是最高级别的父格,也就是说在Cellx也有父格的前提下,该表达式返回的值是指在Cellx所属父格分组内的位置。
- 函数示例:=SSR_GetIndex(A2)
计算公式相关设置项请参考:公式函数
5.注意
如果序号列放在类别的左侧,则需指定序号公式所在的单元格的左父格为“产品类别”数据列字段所在的单元格
6.发布预览
点击工具栏上的“发布”按钮,保存电子表格,并进行预览,如下:
资源下载
报表资源:序号倒序排序.xml(注:该资源基于内置的northwind数据库使用)