2016 - 2024

感恩一路有你

Excel实用宏系列02:合并多个Excel文件

浏览量:2158 时间:2024-08-10 08:38:33 作者:采采

有时候我们需要将一堆的Excel文件合并到一个文件夹里面分析,如果文件比较少的话还可以手动操作,文件特别多的话,手动操作就不现实了。本文介绍一种快速合并多个Excel文件的方法——使用宏合并多个Excel文件。

打开VBE编辑窗口

按住Alt F11打开VBE编辑窗口,依次点击“插入->模块”插入一个新模块。

复制宏代码

在新模块中复制下列代码:

```

Option Explicit

Sub HzWb()

Dim bt As Range, r As Long, c As Long

r 1 '1是表头的行数

c 7 '7是表头的列数

Dim wt As Worksheet

Set wt (1) '将汇总表赋给变量wt

(r ":1048576").ClearContents '清除汇总表中原表数据,只保留表头

False

Dim FileName As String, sht As Worksheet, wb As Workbook

Dim Erow As Long, fn As String, arr As Variant

FileName Dir( "*.xlsx")

Do While FileName<>""

If FileName<> Then '判断文件是否是汇总数据的工作簿

Erow wt.Range("A1") 1 '取得汇总表中第一条空行行号

fn FileName '将第1个要汇总的工作簿名称赋给变量fn

Set wb GetObject(fn) '将变量fn代表的工作簿对象赋给变量wb

Set sht (1) '将要汇总的工作表赋给变量sht

'将工作表中要汇总的记录保存在数组arr里

arr sht.Range(sht.Cells(r, "A"), sht.Cells(1048576, "B").End(xlUp)).Offset(0, 5)

'将数组arr中的数据写入工作表

wt.Cells(Erow, "A").Resize(UBound(arr, 1), UBound(arr, 2)) arr

False

End If

FileName Dir '用Dir函数取得其他文件名,并赋给变量

Loop

True

End Sub

```

根据需求修改代码

根据具体工作任务的要求,修改以上代码中的备注部分以适应你的需求。

执行宏代码

修改完代码后,按F5键执行或者回到工作表界面按Alt F8执行即可合并多个Excel文件。(再次强调代码中的标点符号必须是英文标点符号。)

请参考相关引用经验,查看如何打开VBE界面以及执行方法。

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