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

}

}

相关推荐
漂流瓶jz3 小时前
BEM、OOCSS、SMACSS、ITCSS、AMCSS、SUITCSS:CSS命名规范简介
前端·css·代码规范
陈随易7 小时前
真的,你可以不用TypeScript
前端·后端·程序员
郑州光合科技余经理7 小时前
代码展示:PHP搭建海外版外卖系统源码解析
java·开发语言·前端·后端·系统架构·uni-app·php
唐璜Taro8 小时前
Vue3 + TypeScript 后台管理系统完整方案
前端·javascript·typescript
dustcell.8 小时前
haproxy七层代理
java·开发语言·前端
掘金酱8 小时前
「寻找年味」 沸点活动|获奖名单公示🎊
前端·人工智能·后端
颜酱8 小时前
栈的经典应用:从基础到进阶,解决LeetCode高频栈类问题
javascript·后端·算法
患得患失9498 小时前
【前端】前端动画优化的核心
前端
Xin_z_8 小时前
Vue3 + Sticky 锚点跳转被遮挡问题解决方案
前端·javascript·vue.js
REDcker8 小时前
WebCodecs VideoDecoder 的 hardwareAcceleration 使用
前端·音视频·实时音视频·直播·webcodecs·videodecoder