如何将多个不定行的 Sheet 合并成一个汇总表

某对账单随着日期不断增加(以多 sheet 保存)

..

但有的日期可能会有多条记录,如 7-5:

..

现在需要将对账单实时汇总到第一个“应收账款明细”页签中,形成如下结果:

..

使用集算器实现步骤:

1.     安装运行集算器

可去润乾官网下载职场版,同时下载一个免费授权就够了,首次运行时会提示加载。

2.     编写脚本

..

脚本列出来看下:


A B C D
1 =file("39/ 对账模板.xlsx") =A1.xlsopen() =create(${16.("_"/~).string()}) [A,B,C,D,E,F,G,H,I,J]
2 for B1.(stname).to(2,) =B1.xlscell("J6",A2) =to(21,25).(B1.xlscell("I"/~,A2))
3
for >row=8+B3
4

if   len(B1.xlscell("A"/row,A2))==0 break
5

=D1.(B1.xlscell(~/row,A2))
6

>C1.insert(0,C5(1),B2,${C5.to(2,).string()},${C2.string()})
7 =B1.xlsexport@a(C1;B1.stname) =A1.xlswrite(B1)

C1 创建用于保存结果的序表,共 16 列,与目标结果列数相同

A2 从第二个 sheet 开始循环,取得运单号、开票税金等单值数据

B3 开始则读取日对账单多行(不定行)记录,并与上面的单值数据组成一条记录插入 C1 中,直到读完最后一行

最后将结果表写入 Excel(A7)并输出文件(B7)

3.     按 F9 运行脚本就可以看到开头提到的结果“应收账款明细”了。当然还可以再进一步进行处理,判断并将新增日对账单添加到明细中,这里不再赘述。

数据与脚本.zip