在企业财务工作中,每个财务周期都要制作资产负债表,周期分为月度、季度、年度。季度报表可由月度报表合并得来,年度报表可由季度报表合并而来。有些大企业有许多部门,各部门也有资产负债表,总公司的资产负债表可由各部门的合并得来。如果由人工来进行这种合并工作,不仅烦琐,还易出错。如果使用程序自动完成这种工作就会既高效又正确。本文将介绍 esProc SPL 编写的资产负债表合并代码示例。esProc 是专业的数据计算引擎,SPL 中提供了完善的 Excel 文件读写函数,做资产负债表合并非常容易。
资产负债表通常如下图:
表中红色字体单元格是由其它单元格数据计算得来的,合并时不用考虑这些格,只需合并黑色字体单元格的数据。
1. 不同时段合并
按时段合并时,合并报表的期初数为第一个时段的期初数,期末数为最后一个时段的期末数。如用1、2、3月的资产负债表合并一季度的报表时,期初数为1月的期初数,期末数为3月的期末数。
SPL代码:
A1打开1月份的资产负债表
A2打开3月份的资产负债表
A3指定合并后的资产负债表文件名
A4列出要读取期末数的单元格名称
A5-B6循环读取3月表中A4指定的单元格的期末数,并写入到1月表中的对应格
A7将合并后的A1保存到A3指定的Excel合并文件中
2. 不同部门合并
合并不同部门时,合并报表的期初数为各部门期初数之和,期末数也为各部门期末数之和。
SPL代码示例:
A1列出各部门资产负债表文件名
A2指定合并后的资产负债表文件名
A3打开各部门资产负债表文件
A4列出要读取数据的单元格名称
A5-C9循环要读取的单元格,从各部门表中读取当前格数据(没填计0),并累加到变量v,将累加后的v写入到第一个部门表的对应格中(v为0时将单元格置空)。
A10将保存了合并后值的第一部门表保存到A2指定的Excel合并文件中