2024年2月8日发(作者:)
不同工作薄汇总VBA代码
以下是一个用于将不同工作簿数据汇总的VBA代码示例,代码注释中有详细说明每一行代码的作用:
```vba
Sub 汇总不同工作簿数据
Dim SummarySheet As Worksheet ' 汇总数据的工作表
Set SummarySheet = ("汇总") ' 设置汇总数据的工作表名称
Dim SourceFolder As String ' 存储源文件夹路径
SourceFolder = "C:SourceFolder" ' 设置源文件夹路径
Dim FileExtension As String ' 存储文件扩展名
FileExtension = "*.xlsx" ' 设置文件扩展名
Dim FileName As String ' 存储文件名
FileName = Dir(SourceFolder & "" & FileExtension) ' 获取第一个文件
Dim LastRow As Long ' 存储汇总数据的最后一行
LastRow = (, 1).End(xlUp).Row +
1 ' 获取汇总数据的最后一行
Updating = False ' 关闭屏幕更新,加快代码执行速度
Do While FileName <> "" ' 循环直到没有文件为止
Dim SourceWorkbook As Workbook ' 存储源工作簿
Set SourceWorkbook = (SourceFolder & "" &
FileName) ' 打开源工作簿
Dim SourceSheet As Worksheet ' 存储源工作表
Set SourceSheet = ("数据") ' 设置源工作表名称
Dim LastRowSource As Long ' 存储源数据的最后一行
LastRowSource = (,
1).End(xlUp).Row ' 获取源数据的最后一行
Dim SourceRange As Range ' 存储源数据的范围
Set SourceRange = ("A2:G" & LastRowSource)
' 设置源数据的范围
(LastRow, 1) ' 将源数据复制到汇总数据的下一行
SaveChanges:=False ' 关闭源工作簿
LastRow = (, 1).End(xlUp).Row +
1 ' 更新汇总数据的最后一行
FileName = Dir ' 获取下一个文件
Loop
Updating = True ' 打开屏幕更新
End Sub
```
这段代码假设要将位于文件夹路径`C:SourceFolder`中名为`数据.xlsx`的工作簿的"数据"工作表数据汇总到当前工作簿的"汇总"工作表中。
注意:在运行此代码之前,请确保已在当前工作簿中创建一个名为"汇总"的工作表。
发布者:admin,转转请注明出处:http://www.yc00.com/news/1707349477a1494333.html
评论列表(0条)