WPS合并文件夹下的EXCEL表格 Sub 合并当前目录下所有工作簿的全部工作表() Dim MyPath, MyName, AWbName 定义变量但未指定变量类型这样一般是不规范的 Dim Wb As Workbook, WbN As String 定义变量wb为工作簿类型wbn为字符型 Dim G As Long 定义G为长整型 Dim Num, ini As Long 定义num并定义和声明ini为长整型注意num类型未定 Application.ScreenUpdating False 关闭屏幕刷新 MyPath ActiveWorkbook.Path 将当前工作簿的路径赋值给mypath MyName Dir(MyPath \ *.xls) 将活动工作簿的名字加上.xls后赋值给myname AWbName ActiveWorkbook.Name 将激活工作簿的文件名赋值给awbname Num 0 ini 0 Do While MyName 运行下面的do while循环直到myname的值为空。 If MyName AWbName Then 如果myname与awbname的值不同则运行下一个end if前的语句 Set Wb Workbooks.Open(MyPath \ MyName) 打开mypath路径下名字为myname变量值的工作簿并将其赋给wb Num Num 1 对num累加 With Workbooks(1).ActiveSheet 对已打开的所有工作簿中的第一个工作簿中的被激活的工作表运用with语句 If ini 0 Then Wb.Sheets(1).Range(Wb.Sheets(1).Cells(1, 1), Wb.Sheets(1).Cells(1, Wb.Sheets(1).UsedRange.Columns.Count)).Copy .Cells(1, 1) 将wb工作簿中第一个工作表的第一行有应用痕迹的单元格内容复制到Workbooks(1).ActiveSheet的相同位置 Wb.Sheets(1).Range(Wb.Sheets(1).Cells(2, 1), Wb.Sheets(1).Cells(2, Wb.Sheets(1).UsedRange.Columns.Count)).Copy .Cells(2, 1) 将wb工作簿中第一个工作表的第二行有应用痕迹的单元格内容复制到Workbooks(1).ActiveSheet的相同位置 Wb.Sheets(1).Range(Wb.Sheets(1).Cells(3, 1), Wb.Sheets(1).Cells(3, Wb.Sheets(1).UsedRange.Columns.Count)).Copy .Cells(3, 1) 将wb工作簿中第一个工作表的第三行有应用痕迹的单元格内容复制到Workbooks(1).ActiveSheet的相同位置 Wb.Sheets(1).Range(Wb.Sheets(1).Cells(4, 1), Wb.Sheets(1).Cells(4, Wb.Sheets(1).UsedRange.Columns.Count)).Copy .Cells(4, 1) 将wb工作簿中第一个工作表的第四行有应用痕迹的单元格内容复制到Workbooks(1).ActiveSheet的相同位置 ini 1 End If For G 1 To Sheets.Count 在Workbooks(1).ActiveSheet的所有sheet中循环。 Wb.Sheets(G).Range(Wb.Sheets(G).Cells(5, 1), Wb.Sheets(G).Cells(Wb.Sheets(G).UsedRange.Rows.Count, Wb.Sheets(G).UsedRange.Columns.Count)).Copy .Cells(.Range(A65536).End(xlUp).Row 1, 1) Wb.Sheets(G).Range(Wb.Sheets(G).Cells(5, 1) 第一个参数表示从第几行开始复制 将WB中的A2到最后一行最后一列的非空单元格的内容复制到Workbooks(1).ActiveSheet中每次从Workbooks(1).ActiveSheet的最后一个非空行开始粘贴 Next WbN WbN Chr(13) Wb.Name 将wbn的值加上空格和wb的名称后赋值给wbn Wb.Close False 将wb关闭 End With End If MyName Dir Loop Range(A1).Select 选中当前工作簿的第一个单元格 Application.ScreenUpdating True 开启屏幕刷新 MsgBox 共合并了 Num 个工作薄下的全部工作表。如下 Chr(13) WbN, vbInformation, 提示 给出最后提示 End Sub

相关新闻

最新新闻

我是你的全能写作助手

我是你的全能写作助手

,只需一句话交代你的想法,我来帮你一键更新文章,开启丝滑的创作体验。

2026/7/22 11:12:31
业务岗想做数据分析,先别急着学复杂模型

业务岗想做数据分析,先别急着学复杂模型

很多运营、市场、销售、HR、财务等业务岗伙伴,想靠数据分析、AI能力升职加薪、突破职场瓶颈,却普遍踩坑:一上来死磕机器学习、深度学习复杂模型,啃晦涩公式、刷硬核代码。结果就是收藏夹堆满教程,看似学了一堆高阶技术…

2026/7/22 11:12:31
C / C++ 算法基础-双向链表(个人笔记)

C / C++ 算法基础-双向链表(个人笔记)

变量、数组、链表&#xff1a;20260720笔记整理--C语言基础-CSDN博客 双向链表 链表结构&#xff1a; #include <stdio.h> #include <stdlib.h> //链表结构 typedef struct Node{int data;struct Node *pre,*next; }Node,*LinkNode;定义虚拟头结点&#xff1a; …

2026/7/22 11:12:31
2-L5-会话层-day06

2-L5-会话层-day06

了解即可 &#x1f4d1; 文章目录 一、L5 在 OSI 七层里的定位二、L5 会话层的 5 个核心功能 1️⃣ 会话建立&#xff08;Session Establishment&#xff09;2️⃣ 会话维护&#xff08;Session Maintenance&#xff09;3️⃣ 对话控制&#xff08;Dialog Control&#xff09…

2026/7/22 11:12:31
mirror-switcher(镜像切换工具 / Mirror Switcher)

mirror-switcher(镜像切换工具 / Mirror Switcher)

为什么需要它 / Why 开发者在不同网络环境下经常需要在「官方源」与「国内镜像源」之间反复切换&#xff1a;nrm 解决了 npm 的痛点&#xff0c;但 pip、brew、docker、maven、go、cargo、yum、apt…… 每一个都要查一遍文档、改一遍配置文件。本套件把这些操作统一起来&#x…

2026/7/22 11:12:31
一颗电子能存一个比特?从“量子闪存”看二维器件如何突破存储密度的物理极限

一颗电子能存一个比特?从“量子闪存”看二维器件如何突破存储密度的物理极限

如果把半导体存储技术的发展历史拉长来看,会发现一个非常有意思的规律: 过去几十年,存储密度的提升,本质上一直在做同一件事——在越来越小的空间里,想办法控制越来越多的数据。 从单层晶体管,到浮栅存储,再到电荷捕获型闪存;从SLC到MLC、TLC、QLC,存储器一直在尝试…

2026/7/22 11:07:27

月新闻