当前位置: 首页 > news >正文

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


http://www.mrgr.cn/news/3680.html

相关文章:

  • 文心快码(Baidu Comate)快速创建数据可视化图表
  • 如何使用GPT-SoVITSS生成各种角色的语言
  • AWS SAM CLI 备忘单!
  • 32 - I. 从上到下打印二叉树
  • 嵌入式day31
  • Vue动态设置背景颜色
  • 特斯拉算法,暴力递归尝试,汉诺塔问题
  • Vue3自定义hooks
  • 基于yolov5 人体行为检测 对 跌倒 站立 蹲下 坐下 跑 五种行为检测目标检测
  • Spark MLlib 特征工程系列—特征转换MinMaxScaler
  • 如何在 Ubuntu 14.04 上使用 Nginx Web 服务器安装 Laravel
  • vue面试题十八
  • 用Golang实现图形面积计算
  • 字节显示转换操作类 - C#小函数类推荐
  • Zotero 常用插件介绍
  • Java-HttpHeaders请求头或响应头
  • xfs Vs ext4?
  • c语言利用三目运算符制作订单判断免运费程序
  • Windows 11 24H2 终于允许多个应用程序同时使用摄像头
  • Mac安装Typora