序号的实现方法

栏目:eas cloud知识作者:金蝶来源:金蝶云社区发布:2024-09-22浏览:1

序号的实现方法

本文中使用的报表可在产品论坛帖中下载:

https://vip.kingdee.com/article/164338?channel_level=kdclub (扩展报表样例)。


一、列表序号

列表型报表一般会使用函数SELECT(…),把记录一条条的列出来,因而列表序号跟行号或列号基本一致。

         例如以下报表:

单元格B2写公式列出员工姓名:=SELECT(DEMO_员工, 姓名)

单元格A2显示员工序号:=ROW() – 1 ,注意将其纵向父格设置为B2,即A2单元格时跟随其父格B2扩展的。

预览报表:


函数说明:ROW

功能:    取得单元格所在行的行号。

语法: ROW([cellExp])

参数: cellExp 单元格表达式,缺省为当前单元格。

返回值:正整数。

示例: 在第三行单元格中写入ROW(),返回值为3,如果第三行存在纵向扩展格,则行号依次改变。


二、分组序号

分组型报表一般会使用函数GROUP(…),按某个或某几个字段分组,并为每个分组提供汇总计算。

例如以下报表:

单元格B2写公式列出员工姓名:=GROUP(DEMO_地区销售额, 产品, False)

单元格A2显示员工序号:=EXINDEX(B2) ,注意将其纵向父格设置为B2,即A2单元格时跟随其父格B2扩展的。

预览报表:

函数说明:EXINDEX

功能: 层次坐标的逆运算,获得当前单元格所属的某父格在所有扩展出来的格子中排第几。

语法: EXINDEX([fatherCell [,forefatherCell]])

参数: fatherCell 当前单元格的某父格名称,如果缺省则代表直系父格(纵横方向由当前单元格确定);

        forefatherCell 当前单元格的某祖先格名称,如果缺省则代表fatherCell的直系父格。此参数不为空时会递归计算,运算效率较差。

示例:

  假设D1是当前格,A1是B1的父格,B1是C1的父格,C1是D1的父格。

  EXINDEX() 表示计算C1在所有B1扩展出来的“C1”中的顺序号;效果等同于EXINDEX(C1)、EXINDEX(,B1)和EXINDEX(C1,B1),但效率最高。

  EXINDEX(,A1) 表示计算C1在所有A1扩展出来的“C1”中的顺序号,等于在当前B1中的C1顺序号加之前B1中的所有C1数;用于计算大分组内的序号。

EXINDEX(,V0()) 表示计算C1在所有“C1”中的顺序号。


三、组内序号

组内序号指分组内记录的序号,例如以下报表:

预览结果:


四、跨分组序号

跨分组序号顾名思义,既不是分组序号,也非分组内序号,而是跨越多个分组的序号。

例如以下报表:

单元格F2写公式:=GROUP(合同档案, 案卷号, False);

单元格A5写公式按照资料大类分组:=GROUP(合同档案, 资料大类, False, , 大类编码),其父格设为F2;

单元格D2列出分组内的资料名称:=SELECT(合同档案, 资料名称, False, , 起始页);

单元格B5写公式:=-ROW(),其父格设为D5;

单元格C5写公式:=RANK(B5, EXS(B5, A(F2)));

预览报表:

序号的实现方法

本文中使用的报表可在产品论坛帖中下载:https://vip.kingdee.com/article/164338?channel_level=kdclub (扩展报表样例)。一、列表序号列...
点击下载文档
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息