将多个Excel文件汇总到一个文件当中,如何实现呢?多个Excel文件汇总至一个文件,有3个方法,分别为:PQ法,VBA代码法,bat命令的方法。下面我们来为大家一一分享具体操作方法。

1、PQ方法:适用所有Excel文件

只需要几步操作就可以完成,第1,2,3,4个工作簿里面的数据如下所示:

如何将多个Excel文件汇总到一个文件当中?-天天办公网

其中第1个工作簿有两个工作表,第2个工作表中的内容是:

如何将多个Excel文件汇总到一个文件当中?-天天办公网

如何将多个Excel文件汇总到一个文件当中?-天天办公网

第2个工作簿

如何将多个Excel文件汇总到一个文件当中?-天天办公网

第3个工作簿

如何将多个Excel文件汇总到一个文件当中?-天天办公网

第4个工作簿

如何将多个Excel文件汇总到一个文件当中?-天天办公网

如果是4个工作簿,可能复制粘贴也完成了,实际工作中可能是几十个,甚至上百个,那么用复制粘贴就费时费力了,今天教大家不用VBA,几步操作就完成合并。

❶在数据菜单栏,新建查询,选择从文件,选择从文件夹

如何将多个Excel文件汇总到一个文件当中?-天天办公网

❷在窗口中选择浏览,然后打开你Excel工作簿存放的文件夹

如何将多个Excel文件汇总到一个文件当中?-天天办公网

点击确定之后,会弹出一个新窗口,如下所示:

如何将多个Excel文件汇总到一个文件当中?-天天办公网

❸然后在这个窗口的,依次单击添加列,添加自定义列

如何将多个Excel文件汇总到一个文件当中?-天天办公网

❹输入公式:=Excel.Workbook([Content]),注意首字母要求大写

如何将多个Excel文件汇总到一个文件当中?-天天办公网

点击确定之后,窗口中多了一列数据,如下所示:

如何将多个Excel文件汇总到一个文件当中?-天天办公网

❺然后在最后一列的筛选器中筛选,只选择DATA数据选项,其他都取消勾选

如何将多个Excel文件汇总到一个文件当中?-天天办公网

这样原来的custom变成了custom.data,如下所示:

如何将多个Excel文件汇总到一个文件当中?-天天办公网

❻继续对Custom.data右边按纽进行点击,有扩展选择,然后所有的列都是我们需要的

如何将多个Excel文件汇总到一个文件当中?-天天办公网

点击确定之后,表格中所有的数据都显示出来了,如下所示:

如何将多个Excel文件汇总到一个文件当中?-天天办公网

❼点击文件,关闭并上载,如下所示:

如何将多个Excel文件汇总到一个文件当中?-天天办公网

在表格中得到的结果:

如何将多个Excel文件汇总到一个文件当中?-天天办公网

后面的内容是我们想要的内容,前面不需要多余项目都可以进行删除,得到最终合并汇总的结果

如何将多个Excel文件汇总到一个文件当中?-天天办公网

2、使用VBA代码的方法:适用所有工作簿

我们新建了4个工作簿在文件夹中,数据都是模拟的,做试验

如何将多个Excel文件汇总到一个文件当中?-天天办公网

一键合并代码操作如下所示:

如何将多个Excel文件汇总到一个文件当中?-天天办公网

我们看原始表格数据,其中,第1个工作簿有点特殊,这个工作簿中,有两个工作表,第1个工作表的内容是:

第1,2,3,4个工作簿如下所示:

如何将多个Excel文件汇总到一个文件当中?-天天办公网

通过代码,我们一键可以合并,得到结果,这个汇总的结果有两个特点:

1、最后一列,还会显示这些数据的来源是哪个工作簿,哪个表名的。

2、原始数据中每一行的标题自动取消,只保留了一个标题。

如下所示:

如何将多个Excel文件汇总到一个文件当中?-天天办公网

在Excel菜单栏中,点击开发工具,打开VBA,输入如下代码:

其中代码如下所示:

Sub 合并目录所有工作簿全部工作表()

Dim MP, MN, AW, Wbn, wn

Dim Wb As Workbook

Dim i, a, b, d, c, e

Application.ScreenUpdating = False

MP = ActiveWorkbook.Path

MN = Dir(MP & “” & “*.xls”)

AW = ActiveWorkbook.Name

Num = 0

e = 1

Do While MN <> “”

If MN <> AW Then

Set Wb = Workbooks.Open(MP & “” & MN)

a = a + 1

With Workbooks(1).ActiveSheet

For i = 1 To Sheets.Count

If Sheets(i).Range(“a1”) <> “” Then

Wb.Sheets(i).Range(“a1”).Resize(1, Sheets(i).UsedRange.Columns.Count).Copy .Cells(1, 1)

d = Wb.Sheets(i).UsedRange.Columns.Count

c = Wb.Sheets(i).UsedRange.Rows.Count – 1

wn = Wb.Sheets(i).Name

.Cells(1, d + 1) = “表名”

.Cells(e + 1, d + 1).Resize(c, 1) = MN & wn

e = e + c

Wb.Sheets(i).Range(“a2”).Resize(c,d).Copy .Cells(.Range(“a1048576”).End(xlUp).Row + 1, 1)

End If

Next

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

Wb.Close False

End With

End If

MN = Dir

Loop

Range(“a1”).Select

Application.ScreenUpdating = True

MsgBox “共合并了” & a & “个工作薄下全部工作表。如下:” & Chr(13) & Wbn, vbInformation, “提示”

End Sub

3、使用bat命令法:适用csv格式的Excel文件

从公司的软件里面导出来的数据,有些是CSV格式的,可以用这种方法

如何将多个Excel文件汇总到一个文件当中?-天天办公网

我们在文件夹里面新建一个文本文档,里面输入一行代码,copy *.csv all.csv,如下所示:

如何将多个Excel文件汇总到一个文件当中?-天天办公网

保存这个文本文档,将它的后缀名,更改成.bat

如何将多个Excel文件汇总到一个文件当中?-天天办公网

双击运行这个bat文件,会自动生成一个all.csv工作簿。

如何将多个Excel文件汇总到一个文件当中?-天天办公网

然后打开all.csv,对数据进行筛选,把每行的标题筛选出来,并删除,最后把文件的格式更改成xlsx格式保存即可。