NAXS网

首页 > excel / 正文

如何快速把多个excel表合并成一个excel表

admin 2020-02-09 excel 评论

如何快速把多个Excel合并成一个excel表。有这么一种情况,就是我们有很多张excel,而且excel表里面的公式基本一样,我们就想快速的把这些excel合并在一起,意思在合并在一个excel页面,这样可以方便我们分析和统计,其实利用excel表的宏计算就可以实现。下面我们就来一起解决这个问题。

我们需要把多个excel表都放在同一个文件夹里面,并在这个文件夹里面新建一个excel。如图所示:

如何快速把多个excel表合并成一个excel表

如何快速把多个excel表合并成一个excel表

用microsoft excel打开新建的excel表,并右键单击sheet1,找到“查看代码”,单击进去。进去之后就看到了宏计算界面。如图所示:

如何快速把多个excel表合并成一个excel表

如何快速把多个excel表合并成一个excel表

然后我们把下面这些宏计算的代码复制进去,然后找到工具栏上面的“运行”下的“运行子过程/用户窗体”,代码如下,如图所示:

Sub 合并当前目录下所有工作簿的全部工作表()

Dim MyPath, MyName, AWbName

Dim Wb As Workbook, WbN As String

Dim G As Long

Dim Num As Long

Dim BOX As String

Application.ScreenUpdating = False

MyPath = ActiveWorkbook.Path

MyName = Dir(MyPath & "\" & "*.xls")

AWbName = ActiveWorkbook.Name

Num = 0

Do While MyName <> ""

If MyName <> AWbName Then

Set Wb = Workbooks.Open(MyPath & "\" & MyName)

Num = Num + 1

With Workbooks(1).ActiveSheet

.Cells(.Range("B65536").End(xlUp).Row + 2, 1) = Left(MyName, Len(MyName) - 4)

For G = 1 To Sheets.Count

Wb.Sheets(G).UsedRange.Copy .Cells(.Range("B65536").End(xlUp).Row + 1, 1)

Next

WbN = WbN & Chr(13) & Wb.Name

Wb.Close False

End With

End If

MyName = Dir

Loop

Range("B1").Select

Application.ScreenUpdating = True

MsgBox "共合并了" & Num & "个工作薄下的全部工作表。如下:" & Chr(13) & WbN, vbInformation, "提示"

End Sub

如何快速把多个excel表合并成一个excel表

如何快速把多个excel表合并成一个excel表

运行之后,等待10秒针左右,等运行完毕,就是合并完成之后,会有提示,点确定就可以了。查看合并后的数据,有5000多行,就是同一个文件夹里面17个excel表数据合并后的结果。效果如图所示。

如何快速把多个excel表合并成一个excel表

如何快速把多个excel表合并成一个excel表

推荐您阅读更多有关于“excel表合并”的文章

热门浏览
热门标签
生肖 排行榜 游戏 十二生肖 淘宝 WORD 节日 攻略 Excel 小说 抖音 句子 原神 win10 手机 云顶之弈 梦幻西游 SEO ppt 故事 排行 英雄联盟 微信 经典 意思 WPS 赚钱 觅长生 大全 什么 和平精英 疫情地图 百度地图 王者荣耀 春节 推荐 光遇 诗句 Win7
最新评论