EXCEL VBA 跨表合并多个文件

办公教程导读

收集整理了【EXCEL VBA 跨表合并多个文件】办公软件教程,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含915字,纯文字阅读大概需要2分钟

办公教程内容图文

‘选择一个目录,将目录中的所有EXCEL文件导入当前工作表

‘这些EXCEL文件最好格式能一样,这里是每个文件是同一个格式

Sub 批量()
Dim FD, str$, arr
Set FD = Application.FileDialog(msoFileDialogFolderPicker)
If FD.Show = -1 Then t = FD.SelectedItems(1) Else Exit Sub ‘如果没选择文件夹则退出
Application.ScreenUpdating = False
Cells.NumberFormatLocal = "@"
str = Dir(t & "\*.xl*") ‘查找格式为EXCEL的文件
While Len(str) > 0 ‘文件名不为空时
Workbooks.Open (t & IIf(Right(t, 1) = "", "", "") & str) ‘打开工作簿

With ActiveWorkbook.ActiveSheet
.Range(.Cells(2, "l"), .Cells(.[a65536].End(3).Row, "l")) = "’" & Left(str, Len(str) – IIf(Right(str, 1) = "x", 5, 4))
arr = .UsedRange
Workbooks(str).Close False ‘关闭工作薄

Kill (t & IIf(Right(t, 1) = "", "", "") & str) ’删除工作薄(如果不删除,省去这一步)

End With

With ActiveSheet
rw = .[a65536].End(3).Row + 1
.Cells(rw, 1).Resize(UBound(arr, 1), UBound(arr, 2)) = arr ‘将数据写入当前工作表
End With
str = Dir() ‘查找下一个文件
Wend
If [a1] = "" Then Rows(1).Delete ‘如果A1为空,删除第一行
Application.ScreenUpdating = True
End Sub

办公教程总结

以上是为您收集整理的【EXCEL VBA 跨表合并多个文件】办公软件教程的全部内容,希望文章能够帮你了解办公软件教程EXCEL VBA 跨表合并多个文件
如果觉得办公软件教程内容还不错,欢迎将网站推荐给好友。

hmoban主题是根据ripro二开的主题,极致后台体验,无插件,集成会员系统
自学咖网 » EXCEL VBA 跨表合并多个文件