合并当前目录下所有工作簿的全部工作表_使用VBA代码合并表格(二)

作者:音子,微信公众号:自在不思量,转载请注明出处。


上一篇介绍了如何使用VBA代码来合并同一文件夹下的所有工作簿,欲知详情,请点击下方链接:

使用VBA代码合并表格(一)​mp.weixin.qq.com


这一篇来介绍如何使用VBA代码合并一个工作簿内的所有sheet
依然要强调一句,对于不打算研究学习VBA的人来说,下面介绍的这种方式只需要会用就可以了,不懂VBA语句、不懂原理并不妨碍我们使用它来提高我们的工作效率。
先看一下完整代码。需要注意的是,下方这段代码的用途是合并当前工作簿下的所有工作表:Sub 合并当前工作簿下的所有工作表()
Application.ScreenUpdating = False
For j = 1 To Sheets.Count
If Sheets(j).Name <> ActiveSheet.Name Then
X = Range("A65536").End(xlUp).Row + 1
Sheets(j).UsedRange.Copy Cells(X, 1)
End If
Next
Range("B1").Select
Application.ScreenUpdating = True
MsgBox "当前工作簿下的全部工作表已经合并完毕!", vbInformation, "提示"
End Sub


下面我举个例子来说明一下这段代码要如何使用。
假设你要收集所有班级的比赛项目报名信息,以班级为单位上交报名表。
每个班级的表格形式如下:

<

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
合并多个工作簿里面的多个工作合并单元格,可以使用VBA编写一个宏,具体步骤如下: 1. 打开一个新的工作簿,命名为“合并表格”。 2. 在“合并表格工作簿中选中第一个工作,复制并粘贴到“合并表格工作簿中。 3. 使用VBA编写一个宏,将第一个工作中的所有合并单元格取消合并代码如下: ``` Sub UnMerge() Dim rng As Range For Each rng In ActiveSheet.UsedRange If rng.MergeCells Then rng.UnMerge End If Next End Sub ``` 4. 重复步骤2和步骤3,将所有工作合并单元格都取消合并。 5. 使用VBA编写一个宏,将所有工作中的数据复制到“合并表格工作中,代码如下: ``` Sub CopyData() Dim wbk As Workbook Dim wsh As Worksheet Dim rng As Range Set wbk = ThisWorkbook For Each wsh In wbk.Worksheets If wsh.Name <> "合并表格" Then wsh.Copy After:=wbk.Sheets(wbk.Sheets.Count) Set wsh = ActiveSheet wsh.Name = wsh.Name & " " & wsh.Index wsh.Activate Set rng = wsh.UsedRange rng.Select Selection.Copy Destination:=wbk.Sheets("合并表格").Range("A" & Rows.Count).End(xlUp).Offset(1, 0) Application.DisplayAlerts = False wsh.Delete Application.DisplayAlerts = True End If Next End Sub ``` 6. 运行“CopyData”宏,将所有工作中的数据复制到“合并表格工作中。 7. 在“合并表格工作中选中所有数据,使用VBA编写一个宏,将所有单元格合并代码如下: ``` Sub MergeCells() Selection.Merge End Sub ``` 8. 运行“MergeCells”宏,将所有单元格合并。 9. 最后,将“合并表格工作簿保存为一个新的工作簿,即可完成所有工作合并
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值