2016 - 2024

感恩一路有你

Excel批量合并不同工作簿的数据

浏览量:3154 时间:2024-01-15 09:29:46 作者:采采

新建Excel文件并启用宏

为了将大量的Excel工作簿合并成一个表,并保留原工作簿的名称信息,需要按照以下步骤操作:

1. 新建一个Excel文件。

2. 使用“另存为”功能,将文件类型选择为“Excel启用宏的工作簿”。

将需要合并的表放置在同一文件夹中

为了方便合并,把需要合并的Excel表格都放置在同一个文件夹下。

填写文件夹路径和汇总后的文件名

在新建的Excel文件的B2单元格中填写需要合并的文件夹路径(必填)。在B3单元格中填写汇总后的文件名(如果不填,默认为“00_数据汇总”)。

打开VB编辑器并添加代码

按下快捷键“Alt F11”可以打开VB编辑器。然后点击“插入”-“模块”,在新模块的编辑栏中输入以下代码:

```

Sub 数据汇总()

Dim j As String

If Cells(3, 2) "" Then

j "00_数据汇总"

Else

j Cells(3, 2)

End If

If Cells(2, 2) "" Then

MsgBox "请在B2单元格填写文件夹地址"

Exit Sub

Else

GoTo T

End If

T: pth Cells(2, 2) ""

fn Dir(pth "*.xlsx")

Set newbk

Set sht (1)

k 1

Application.DisplayAlerts False

Do While fn <> ""

Set Wb (pth fn)

'同一工作簿中几个工作表都要合并时启用

'sht.Cells(k, 1) fn ":" (1).Name

Columns("A:E").Select

Selection.EntireColumn.Hidden False

mc (Sheets(1).Columns(5))

Columns("A:A").Insert Shift:xlToRight, CopyOrigin:xlFormatFromLeftOrAbove

Range(Cells(2, 1), Cells(mc, 1)).Select

Selection Left(fn, InStrRev(fn, ".") - 1)

k k 1

Selection fn

(1).Rows("2:" mc).Copy

sht.Cells(k, 1).PasteSpecial xlPasteValuesAndNumberFormats

k 1

'同一工作簿中几个工作表都要合并时启用

' False

fn Dir

Loop

pth j ".xlsx"

False

Application.DisplayAlerts True

End Sub

```

开始自动合并到一个新的文件中

按下F5键,开始执行宏代码,将所有需要合并的Excel表格中的数据自动合并到一个新的文件中。合并后的文件名为之前填写的汇总后文件名,默认为“00_数据汇总”。

版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。