WPS宏实现Sheet页合并功能

把表格中N个Sheet页数据合并成一个新的Sheet页

function 合并Sheet页() {

//获取工作表对象

var ws = ThisWorkbook.Worksheets;

//创建名称为 合并页 的Sheet页,如果存在名称叫合并页的Sheet页,这里会报错,没做判断删除

var ws1 = ws.Add();

ws1.Name = "合并页";

//先把表头复制过去

ws.Item(2).Cells(1,1).Rows.EntireRow.Copy(ws1.Cells(1, 1));

//获取所有Sheet页对象

var worksheetObjects = {};

var sheetNum = ws.Count;

//console.log("Sheet页数量:"+sheetNum);

//这里i从2开始,把新创建的合并页抛出去

for(i = 2; i < sheetNum+1; i++){

var sheetName = ws.Item(i).Name;

//console.log("第"+i+"个"+"Sheet页名称:"+sheetName);

worksheetObjects[sheetName] = ws.Item(sheetName);

//每个Sheet页从第二行开始复制

var lastCol = worksheetObjects[sheetName].Cells(1, worksheetObjects[sheetName].Columns.Count).End(xlToLeft).Column;

var lastRow = worksheetObjects[sheetName].Cells(worksheetObjects[sheetName].Rows.Count,1).End(xlUp).Row;

//获取合并页的有多少行

var startRow = ws1.Cells(ws1.Rows.Count,1).End(xlUp).Row;

//开始复制

worksheetObjects[sheetName].Range(Cells(2,1),Cells(lastRow,lastCol)).Copy(ws1.Cells(startRow+1, 1));

}

}

相关推荐
IAtlantiscsdn1 天前
Redis7底层数据结构解析
前端·数据结构·bootstrap
小枫编程1 天前
Spring Boot 与前端文件上传跨域问题:Multipart、CORS 与网关配置
前端·spring boot·后端
uhakadotcom1 天前
入门教程:如何编写一个chrome浏览器插件(以jobleap.cn收藏夹为例)
前端·javascript·面试
捡芝麻丢西瓜1 天前
SPM 之 混编(OC、Swift)项目保姆级教程(Swift Package Manager)
前端
我是天龙_绍1 天前
cdn是个啥?
前端
南雨北斗1 天前
VSCode三个TS扩展工具介绍
前端
若无_1 天前
了解 .husky:前端项目中的 Git Hooks 工具
前端·git
ze_juejin1 天前
前端发送语音方式总结
前端
给月亮点灯|1 天前
Vue3基础知识-Hook实现逻辑复用、代码解耦
前端·javascript·vue.js
Simon_He1 天前
一款适用于 Vue 的高性能流式 Markdown 渲染器,源自我们的 AI 聊天机器人
前端·vue.js·markdown