Bootstrap

利用Excel函数填充财务报表项目对应的附注序号

引言

在出具财务报表审计报告的阶段,对审定财务报表的各个项目进行对应的附注编号,是一项机械而枯燥的工作。

财务报表模版示例如下图所示,要在B列填充财务报表项目的附注编号,同时要跳过年末余额和年初余额均没有数据的行。比如,第6行货币资金对应七(一),第12行应收账款对应七(二),以此类推。

财务报表模版(示例)

操作步骤

这里演示如何利用Excel函数填充财务报表项目对应的附注序号。为了避免函数多层嵌套不易理解,增加E、F、G、H、I五个辅助列

1.E列

判断C列或D列是否有数据。E6单元格输入公式:

=OR(IFERROR(AND(ISNUMBER(C6),VALUE(C6)),FALSE),IFERROR(AND(ISNUMBER(D6),VALUE(D6)),FALSE))

2.F列

判断是否包含合计数、其中等关键字。比如对29行流动资产合计、40行其中:固定资产原价不进行编号。F6单元格输入公式:

=OR(IFERROR(FIND("流动资产合计",A6),FALSE),IFERROR(FIND("其中",A6),FALSE),IFERROR(FIND("累计折旧",A6),FALSE),IFERROR(FIND("固定资产减值准备",A6),FALSE),IFERROR(FIND("库存商品",A6),FALSE))

3.G列

判断是否进行编号。如果C列或D列有数据(即E列为True),且F列不包含关键字(F列为False),则进行编号。G6单元格输入公式:

=AND(E6,NOT(F6))

4.H列

进行编号。若IF函数判断G列为True,则使用CountIf统计G列选中区域True的个数,得到小写数字1,2,3......若IF函数判断G列为False,则得到空值。最后,再使用NumberString函数转换为中文大写数字一、二、三、......一十、一十一、一十二......特别注意,公式中绝对引用相对引用的部分。

H6单元格输入公式:

=IFERROR(NUMBERSTRING(IF(G6,COUNTIF($G$6:G6,TRUE),""),1),"")

5.I列

处理一十、一十一、一十二......为十、十一、十二......I6单元格输入公式:

=IF(LEN(H6)=3,IF(LEFT(H6)="一",RIGHT(H6,2),H6),IF(LEN(H6)=2,IF(LEFT(H6)="一",RIGHT(H6,1),H6),H6))

完成以上工作,然后选择E6:I6区域,并下拉填充

6.B列

终于到了最后一步了,填充B列的附注编号。B6单元格输入公式:

=IF(I6<>"","七("&I6&")","")

B6单元格下拉填充,完成!

完成效果

推荐阅读

  1. 利用VBA删除工作簿/工作表的所有批注
  2. 利用VBA+SQL查询Excel工作表数据(基本查询)
  3. Excel一键将多个单元格转为复选框
  4. 利用VBA断开多个工作簿的所有链接源
  5. 利用VBA获取指定文件类型的详细信息
;