WPS多个工作表快速合并至一个工作表!
在工作中经常遇到需要将多个工作表中的数据合并到一个工作的情形,我们可以如何做呢,比如我们要合并一个成绩表,数据如下所示,要把一班、二班、三班的数据合并到汇总表中去:



方法一、利用WPS内置的合并表格功能
点击「数据」→「合并表格」,弹出对话框:

点击「开始合并」后,会生成一个新的表格,内容如下:
似乎结果并不是太理想。

方法二:JScript代码
使用JScript代码,解决起来非常轻松,而且适应性非常强,如下:
var app = GetObject('', 'KET.Application')var sheets = app.ActiveWorkbook.Sheetsvar arr = []; //arr用于保存合并的数据for (var i = 1; i <= sheets.Count; i++) { if (sheets(i).Name === '汇总表') { continue; } var r = sheets(i).UsedRange if (i === 1) { //复制标题行 arr.push((r.Range(r.Cells(1, 1), r.Cells(r.Columns.Count)).Value).toArray()) } for (var row = 2; row <= r.Rows.Count; row++) { //逐行将表格内容复制到数组 arr.push((r.Range(r.Cells(row, 1), r.Cells(row, r.Columns.Count)).Value).toArray()); }}var sheet = sheets("汇总表");with(sheet) { //将arr复制到汇总工作表 //Excel.array2dToSafeArray2d函数用于将Javascript转换成Excel能接受的二维数组 Range(Cells(1, 1), Cells(arr.length, arr[0].length)) = Excel.array2dToSafeArray2d(arr);}
在万能脚本程序中运行此段代码

,得到的结果如下:

你学会了吗?
是不是非常简单?
用JScript不用安装VBA运行环境,也不用将excel文件改成xlsm格式,代码透明公开,是不是更加安全和方便?
觉得好用可以收藏并分享给你的好友哦?
欢迎关注,下一讲我会告诉大家如何进行横向合并(栏目不同的表格)