如何去除 EXCEL 文件中的重复行

 

EXCEL数据文件中,如果按某几个列值比较,值都相等的几行称为重复行,那么怎么删除多余的重复行,只留下一行?

如果数据少,只有几十行数据,那么手工删除也是可以的。而如果数据量很大,手工处理就会是很麻烦的事了,用 Excel 自带的 VBA 来处理也会经常卡死。

自己编写程序来实现?也是可行的,不过首先要读取EXCEL文件内容读成数据集对象,再用两重循环逐行比较是否是重复行,删除重复行后再输出为新的EXCEL文件,编写代码的工作量可不少。而且因为EXCEL文件的格式不相同,要比较的字段不同,编写的程序并不能通用,下次还需重新编写程序。

如果使用集算器SPL来去除重复行,那就很简单了,只需要3行代码。

例如下面这个EXCEL文件:

..

如果按Col1Col2Col3来去除重复行,编写SPL脚本如下:


A

1

=file("test.xlsx").xlsimport@t()

2

=A1.group@1(Col1,Col2,Col3)

3

=file("test1.xlsx").xlsexport@t(A2)

 

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

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

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

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

4、  合并及拆分EXCEL文件

请参阅 SPL 解析及导出 Excel

SPL 读入 EXCEL 文件后,就可以很容易地做排序、分组、汇总等操作,请参阅 SPL 分组

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

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

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