多个 EXCEL 文件如何合并成一个文件

 

同一文件夹里有多个格式相同的EXCEL文件,需要把它们合并到一个EXCEL文件中,应该怎么做呢?

自己编写程序来实现?尽管好些程序语言都提供了读取EXCEL文件的API,但还是需要写程序去打开每一个文件,循环读取所需的每个单元格数据,在内存中把各文件数据保存到同一个数据集对象,最后再写出一个新的EXCEL文件,编写代码的工作量往往比较大。而且因为每批EXCEL文件的格式不相同,编写的程序并不能通用,下次还需重新编写程序。

使用集算器SPL来进行合并,那就很简单了,只需要几行代码。

编写SPL脚本如下:


A

B

C

1

>dir="E:/work/excel/"

=file(dir+"merged.xlsx")


2

=directory(dir+"*.xlsx")



3

for A2

=file(dir+A3).xlsimport@t()


4


If #A3==1

=B1.xlsexport@t(B3)

5


else

=B1.xlsexport(B3)

 

此外还有合并同一个 EXCEL 文件中不同 Sheet 为一个 Sheet,以及合并后做分组、汇总等,请参阅EXCEL 合并汇总

SPL还可以很方便地处理以下EXCEL需求:

1、  读取自由格式、交叉表、主子表等格式的EXCEL文件

2、  将数据导出、追加到EXCEL文件,输出预设精美格式的EXCEL文件

3、  读写超大数据量的EXCEL文件

4、  合并及拆分EXCEL文件

请参阅SPL 解析及导出 Excel

集算器是进行文件数据源处理的专业工具,可以方便地进行 TXT、Excel、Xml、Json、CSV、ini 等各种文件数据的混合计算、入库以及导出等工作。桌面级计算工具,即装即用,配置简单,调试功能完善,可设置断点、单步执行,每步执行结果都可查看。语法简单,符合人的自然思维,比其他高级开发语言更简单。请参阅文件处理的应用场景

SPL也能很方便地嵌入到JAVA应用,可参考Java 如何调用 SPL 脚本

具体使用方法可参考 如何使用集算器