如何合并多个excel表内容

我现在有18个报表,结构一样,只是里面数据不一样,我想把他合到一个表里面,又不想每个表打开把数据一个个复制黏贴。
有别的什么办法吗?

第一步:把多个excel表都放在同一个文件夹里面,并在这个文件夹里面新建一个excel。

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

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

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

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

温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-10-18

以WPS 2019版本为例:

如需将合并多个excel表内容,可使用WPS2019中已自带的「文档拆分合并」功能:

操作步骤:

1)打开其中一份「表格(Excel)」文档;

2)点击「特色应用-拆分合并-合并」;

3)点击添加需合并文件,设置合并文件需合并的页数范围即可将多个文档合并为一份。

    官方电话官方服务
      官方网站
第2个回答  2010-12-27
从其他高手那里copy过来的最佳答案,试试。。

新建一个工作表,命名后保存到和与合并的100个文件同一个文件文件夹,摁 alt + f11,双击工程资源管理器里面的sheet1(sheet1),在右侧的代码区粘贴如下代码。运行。等候一会就OK了。

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("A65536").End(xlUp).Row + 2, 1) = Left(MyName, Len(MyName) - 4)
For G = 1 To Sheets.Count
Wb.Sheets(G).UsedRange.Copy .Cells(.Range("A65536").End(xlUp).Row + 1, 1)
Next
WbN = WbN & Chr(13) & Wb.Name
Wb.Close False
End With
End If
MyName = Dir
Loop
Range("A1").Select
Application.ScreenUpdating = True
MsgBox "共合并了" & Num & "个工作薄下的全部工作表。如下:" & Chr(13) & WbN, vbInformation, "提示"
End Sub本回答被网友采纳
第3个回答  2010-12-27
1、先打开任意一个文件
2、excel中的左下角有shett1、shett2、shett3三个工作表,如果你的表格在shett1上,那么把光标 移到“shett1”上,击右键,然后选择“移动或复制工作表M”,现在出现一个对话框,选择“建立副本”,
点击:确定
3、下面就多了一个“shett1(2)”,这个就有表格了,最后再根据需要重命名。
这样就大功告成了,很简单的,希望能给你帮助!
第4个回答  2020-05-27

表格如何合并多个数据?这个视频告诉你!

相似回答