打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
每日Excel分享(VBA)| 数据合并?其实很简单(三)

导读

需要合并的工作簿有5个,每个工作簿中都有多个工作表,所有工作表的表头标题都是一致的。

打开VBE编辑器新建模块并添加VBA代码,如下图:

操作方法:

按ALT F11组合键打开VBE编辑器,选中任意一个工作表名点击右键,然后选择“插入——模块”,在模块中粘贴以下代码:

Sub 合并工作簿()

    Dim k$, i%, wk As Workbook, sh As Worksheet, arr

    Application.ScreenUpdating = False

   Sheets('合并').Range('A2:E65536').ClearContents

   Set kw = ThisWorkbook

    k = Dir(ThisWorkbook.Path & '\*.xls')

    Do While k <> ''

        If k <> kw.Name Then

            Set wk = Workbooks.Open(ThisWorkbook.Path & '\' & k)

            For Each sh In Worksheets

          sh.Copy after:=ThisWorkbook.Sheets('合并')

          Next sh

            wk.Close False

        End If

        k = Dir

    Loop

    Call 合并工作表

End Sub

Sub 合并工作表()

Dim sh As Worksheet

Dim i As Integer

For Each sh In Worksheets

If sh.Name <> '合并' Then

i = sh.UsedRange.Rows.Count

Sheets('合并').Columns(1).Cells(Sheets('合并').Columns(1).Cells.Count). _

End(xlUp).Offset(1).Resize(i - 1, 7) = sh.Range('a2').Resize(i - 1, 7).Value

End If

Next

Application.ScreenUpdating = True

Sheets('合并').Select

End Sub


添加一个用于执行VBA代码的按钮,并指定要执行的代码


最终效果如下:

看到这里,你是否会觉得合并数据很强大呢?其实这还只是最基本的数据合并,如果有N个工作簿,每个工作簿有多个工作表,其中都有一个工作表名称是相同的,我们只需要合并那个名称相同的工作表(合并所有工作簿中指定名称的工作表),你有想过应该怎么做吗?你想了解学习更多关于数据合并的知识吗?


第294天的坚持,离365天的小目标还剩71天

我的Excel,天天与你不见不散

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
VBA与Excel入门——Excel的三个基本对象VBA表示
VBA/Excel-实例系列-01-工作簿目录生成
教程 | Excel中超实用的86种常用VBA写法
绝了,10秒完成批量汇总10W个工作薄指定某些工作簿的工作表到总表
用VB操作excel方法汇总
Excel自动创建财会工作表超链接目录
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服