Vba:如何打开文件夹中的所有文件
您可以使用Do While循环与 VBA 中的Workbooks.Open方法来打开特定文件夹中的所有文件。
以下是实践中执行此操作的常见方法:
Sub OpenAllFilesInFolder()
Dim ThisFolder As String
Dim ThisFile As String
'specify folder location and types of files to open in folder
ThisFolder = "C:\Users\bob\Documents\current_data"
ThisFile = Dir(ThisFolder & "\*.xlsx")
'open each xlsx file in folder
Do While ThisFile <> ""
Workbooks.Open Filename:=ThisFolder & "\" & ThisFile
ThisFile = Dir
Loop
End Sub
此特定宏将打开以下文件夹中具有.xlsx扩展名的所有文件:
- C:\Users\bob\Documents\current_data
以下示例展示了如何在实践中使用该宏。
示例:如何使用 VBA 打开文件夹中的所有文件
假设我们有以下名为current_data的文件夹,其中包含三个.xlsx文件:
假设我们要使用 VBA 打开此文件夹中的所有.xlsx文件。
我们可以创建以下宏来执行此操作:
Sub OpenAllFilesInFolder()
Dim ThisFolder As String
Dim ThisFile As String
'specify folder location and types of files to open in folder
ThisFolder = "C:\Users\bob\Documents\current_data"
ThisFile = Dir(ThisFolder & "\*.xlsx")
'open each xlsx file in folder
Do While ThisFile <> ""
Workbooks.Open Filename:=ThisFolder & "\" & ThisFile
ThisFile = Dir
Loop
End Sub
当我们运行这个宏时,文件夹中每个扩展名为.xlsx的文件都会被一一打开。
请注意,如果文件夹中的任何文件已打开,这些文件将保持打开状态。
注意:您可以在此处找到 VBA 中Workbooks.Open方法的完整文档。
其他资源
以下教程说明如何在 VBA 中执行其他常见任务: