VBA-合并多个工作簿
1.首先我们理清思路,我们将所有要合并到一起的Excel工作簿放到一个文件夹里,该文件夹里面有一个启用宏的工作表,启动该工作表的宏,就可以将该文件夹里面的所有Excel文件的内容合并到一张表里面,后面可以将合并完成后的数据复制或剪切到新的Excel表中。
2.代码如下
Sub 合并目录所有工作簿全部工作表()Dim MP, MN, AW, Wbn, wnDim Wb As WorkbookDim i, a, b, d, c, eApplication.ScreenUpdating = FalseMP = ActiveWorkbook.Path '获取当前工作薄的路径MN = Dir(MP & "\" & "*.xls") '遍历Excel文件AW = ActiveWorkbook.Name '获取当前工作簿名称Num = 0e = 1Do While MN <> ""If MN <> AW ThenSet Wb = Workbooks.Open(MP & "\" & MN)a = a + 1With Workbooks(1).ActiveSheetFor i = 1 To Sheets.Count
'复制工作表内容If Sheets(i).Range("a1") <> "" ThenWb.Sheets(i).Range("a1").Resize(1, Sheets(i).UsedRange.Columns.Count).Copy .Cells(1, 1)d = Wb.Sheets(i).UsedRange.Columns.Countc = Wb.Sheets(i).UsedRange.Rows.Count - 1
'增加一列
wn = Wb.Sheets(i).Name.Cells(1, d + 1) = "表名".Cells(e + 1, d + 1).Resize(c, 1) = MN & wne = e + cWb.Sheets(i).Range("a2").Resize(c, d).Copy .Cells(.Range("a1048576").End(xlUp).Row + 1, 1)End IfNextWbn = Wbn & Chr(13) & Wb.NameWb.Close FalseEnd WithEnd IfMN = DirLoopRange("a1").SelectApplication.ScreenUpdating = TrueMsgBox "共合并了" & a & "个工作薄下全部工作表。如下:" & Chr(13) & Wbn, vbInformation, "提示"End Sub
3.在Excel工作表中整加一个按钮控件,指定宏,点击运行效果如下:
VBA-合并多个工作簿相关推荐
- VBA将excel中的多个工作表sheet合成一个工作表,多个工作簿的多个工作表合并为一个工作簿
1 将excel中的多个工作表sheet合成一个工作表 工作表合成前: 工作表合成后: **第一步:**在文件中新建一个工作表sheet,用来存放合成后的数据,如图所示: 第二步:点击"开发 ...
- 编辑器的合并用不了_Excel多工作簿合并为一个工作簿,10秒搞定,这才是最高效的方式...
多工作簿合并为一个工作簿,在工作中很常见,比如把不同门店的信息.每个月的销量合并到一个工作簿等等,在工作簿比较少的时候可以使用复制粘贴,一旦数量较多这种就不适用了.这里分享几种比较高效的合并方法,可以 ...
- excel 宏合并多个工作簿
上一篇博客讲的是合并一个工作簿的所有工作表, 我们再来看看合并两个工作簿.来看如下两个工作簿,一个是初一年级,一个是初二年级,把它合并到初一年级工作簿中 VBA代码如下 Sub 工作薄间工作表合并() ...
- 多个excel工作簿合并_「Excel技巧」批量将多个工作簿的工作表合并到一个工作簿中...
多个工作簿里的表格合并到一个工作簿中,在日常工作中应该经常碰到吧. 怎么合并会比较快又省事? 当然,肯定不是复制粘贴,要合并的工作簿多的情况下,这种方式很耗力气. 不妨,试试用VBA代码法. 今天来讲 ...
- VBA 批量打开workbook工作簿,汇总到同一workbook工作簿中
** VBA 批量打开workbook工作簿,汇总到同一workbook工作簿中 ** 前言:此VBA程序,通用! Sub 收集文件夹中文件路径() Dim f'1.批量打开文件,将文件路径记录到数组 ...
- 合并多个工作簿的宏代码
可以使用 VBA 代码,实现将多个工作簿合并到一个工作簿中.具体代码如下: Sub MergeWorkbooks() Dim Fname As Variant Dim Wbk As Workbook ...
- vba thisworkbook 切换表 执行 速度慢_带你初探VBA事件的大门—工作簿事件
今天给大家分享VBA中一个很重要的概念-"事件",当然"此事件"非日常生活说的"事件". VBA中的事件指的是当对象处于某种状态下所触发的动 ...
- 使用Python批量合并多个工作簿中的同名工作表
批量合并多个工作簿中的同名工作表 使用Python的xlwings模块批量合并多个工作簿中的同名工作表 import os import xlwings as xw import pandas as ...
- 合并多个工作簿为一个工作簿和拆分工作簿为多个工作簿
合并多个工作簿为一个工作簿 1.右键查看代码,插入以下代码 Sub 工作薄间工作表合并()Dim FileOpen Dim X As Integer Application.ScreenUpdatin ...
- Excel如何将多个工作簿合并到一个工作簿中
如下图文件夹中含有六个工作簿,现在想要将这六个工作簿合并到一个工作簿中. 新建一个工作簿 点击下图选项(Excel工具箱,百度即可了解详细的下载安装方法,本文这里不作详细叙述) 点击[汇总拆分] 选择 ...
最新文章
- DPDK之makefile编译选项修改和gdb调试(三)
- FOJ 2105 Digits Count
- windows2003——IIS
- oracle.01081 cannot,ORA-01081: cannot start already-running ORACLE - shut it down first
- python 两个数据框合并计算_一文掌握Excel、SQL、Python【数据合并】大法!
- 在线解析解码jwt token工具
- 数据库与表的操作之SQL Server 2012中的数据类型
- CSS颜色表示的几种方式
- 十七.降维之谱分解和奇异值分解
- 临床大数据分析与挖掘
- 大地经纬度坐标与地心地固坐标的的转换
- 忘记了Excel工作表保护密码的解决办法
- 计算天数(函数)(C语言实现)
- MOS管的行业应用领域-KIA MOS管
- 最美的公式:你也能懂的麦克斯韦方程组
- 腾讯云8核 16G 18M配置服务器评测
- 什么是 C# 分部类(partia)
- 实现一个简单的压测工具
- DEDE织梦网站首页仿制实战操作
- matlab-线性代数 矩阵转置(共轭、非共轭)