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 获取所有打开的工作簿的列表

示例:如何使用 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 中执行其他常见任务:

如何使用VBA重命名文件
如何使用VBA列出文件夹中的文件
如何使用VBA检查文件是否存在

添加评论

您的电子邮箱地址不会被公开。 必填项已用*标注