多个表格文件合并一个工作簿-文件合并

前两天有篇VBA的文章,,然后在其他平台有朋友问道它的反向操作有没有VBA的代码,表示我也找到了,分享给大家。

适用情形比如下面一堆的各部门文件过来需要进行汇总(说到底就是做成一个文件,,,),然后就可以用到了。

首先是一堆的文件。

多个表格文件合并一个工作簿

然后新建一个Excel文件(随意位置),进去之后Alt+F11,F7,复制粘贴下面的代码。

Sub 合并工作薄

Dim FilesToOpen

Dim x As Integer

On Error GoTo ErrHandler

Application.ScreenUpdating = False

FilesToOpen = Application.GetOpenFilename _

(FileFilter:="MicroSoft Excel文件(*.xls), *.xls", _

MultiSelect:=True, Title:="要合并的文件")

If TypeName(FilesToOpen) = "Boolean" Then

MsgBox "没有选中文件"

GoTo ExitHandler

End If

x = 1

While x <= UBound(FilesToOpen)

Workbooks.Open Filename:=FilesToOpen(x)

Sheets.MoveAfter:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count)

x = x + 1

Wend

ExitHandler:

Application.ScreenUpdating = True

Exit Sub

ErrHandler:

MsgBox Err.Description

Resume ExitHandler

End sub

多个表格文件合并一个工作簿

F5运行,然后会出现弹窗让选择合并的文件。

多个表格文件合并一个工作簿

选择之后点击,打开,等待几秒就好了。

多个表格文件合并一个工作簿

最开始的有个sheet1,手动删除就好。

推荐阅读