如何将多个 Excel 工作簿合并为一本书

如何将多个 Excel 工作簿合并为一本书

我有几个多页工作簿,我想将它们合并起来,以便可以同时搜索它们。因此,合并后的工作簿将包含第一个工作簿的标签 1、2、3,然后包含下一个工作簿的标签 1、2、3。

我对 VBA 编程或宏或类似的东西一无所知。如果有人能给我一个脚本并告诉我如何修改它,我将不胜感激。

谢谢阅读!

答案1

下载RDBMerge 插件。这将是实现这一目标的最佳方式。

下载并放在您可以找到的地方,然后在 Excel 中启用它。我建议使用默认的加载项位置C:\Documents and Settings\User\Application Data\Microsoft\AddIns\

单击文件,单击选项,单击加载项选项卡。在管理下拉菜单中,选择 Excel 加载项,然后单击转到。使用“浏览”转到加载项,然后单击确定。验证加载项列表中是否已选中 RDBMerge,然后单击确定。

然后在 Excel 中,您会在功能区上找到一个按钮,单击它并按照说明进行操作。


或者使用 VBA

Sub CopyBooks()
    Application.ScreenUpdating = False
    Application.Calculation = xlManual

    Dim destinationWorkbook As Workbook
    Set destinationWorkbook = ThisWorkbook
    Dim sourceWorkbook As Workbook
    Dim sourceWorksheet As Worksheet
    Const path As String = "C:\path\to\"
    Dim file As Variant

    Dim currentSheets As Long
    currentSheets = destinationWorkbook.Sheets.Count

    file = Dir(path & "*.xl*")

    While file <> ""
        Set sourceWorkbook = Workbooks.Open(path & file)
            For Each sourceWorksheet In sourceWorkbook.Worksheets
                sourceWorksheet.Copy after:=destinationWorkbook.Worksheets(currentSheets)
                currentSheets = currentSheets + 1
            Next
            sourceWorkbook.Close savechanges:=False
            file = Dir
    Wend

    Application.Calculation = xlAutomatic
    Application.ScreenUpdating = True
    End Sub

相关内容