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));

}

}

相关推荐
程序猿_极客3 小时前
【期末网页设计作业】HTML+CSS+JS 美食分享主题网站设计与实现(附源码)
javascript·css·html
dragon7253 小时前
FutureProvider会刷新两次的问题研究
前端·flutter
天蓝色的鱼鱼3 小时前
Next.js路由全解析:Pages Router 与 App Router,你选对了吗?
前端·next.js
xun_xing3 小时前
基于Nextjs15的学习手记
前端·javascript·react.js
有意义3 小时前
Vibe Coding:人机共生时代的开发革命 —— 从概念到 Chrome 扩展实战
前端·ai编程·vibecoding
梅梅绵绵冰3 小时前
SpringMVC快速入门
前端
kirkWang3 小时前
HarmonyOS 6.0 服务卡片实战:把「轻食刻」装进桌面,让轻断食一眼可控
前端
1024小神3 小时前
VNBarcodeObservation的结果中observation.boundingBox 是什么类型?
前端
xun_xing3 小时前
Javascript的Iterator和Generator
前端·javascript
秃了才能变得更强3 小时前
React Native 新、旧架构集成原生模块方式
前端