1

只是想知道......我有一段代码 - excel中的一个宏,允许我打开给定目录中的文件。问题是我只想打开 .xls 文件,而我拥有的代码会打开给定目录中的所有文件。

谁能帮我解决这个问题。

谢谢。

Sub FindOpenFiles()
Dim FSO As Scripting.FileSystemObject, folder As Scripting.folder, file As Scripting.file, wb As Workbook
Dim directory As String

    directory = "O:\test"

    Set FSO = CreateObject("Scripting.FileSystemObject")
    Set folder = FSO.GetFolder(directory)

    For Each file In folder.Files
        Workbooks.Open file
    Next file
End Sub
4

3 回答 3

2
Sub FindOpenFiles()
Dim FSO As Scripting.FileSystemObject, folder As Scripting.folder, file As Scripting.file, wb As Workbook
Dim directory As String

    directory = "O:\test"

    Set FSO = CreateObject("Scripting.FileSystemObject")
    Set folder = FSO.GetFolder(directory)


    For Each file In folder.Files
        If Mid(file.Name, InStrRev(file.Name, ".") + 1) = "xls" Then
            Workbooks.Open directory & Application.PathSeparator & file.Name
        End If
    Next file
End Sub

这个炒的不错...

于 2013-07-11T12:28:44.450 回答
1

看看这是否有效,可能需要一两次调整!

For Each file In folder.Files
    If Right(file, 4) = ".xls" Then
        Workbooks.Open file
    End If
Next file
于 2013-07-11T12:16:04.287 回答
0

试试这个,但我不太确定
directory = "*.xls"

于 2013-07-11T11:17:22.260 回答