5

我有以下代码可以打开文件选择器并让用户选择一个文件。

Sub SelectFiles(ByRef test As String)

    Dim iFileSelect As FileDialog
    Set iFileSelect = Application.FileDialog(msoFileDialogFilePicker)

    Dim vrtSelectedItem As Variant  

        If iFileSelect.Show = -1 Then            

            For Each vrtSelectedItem In iFileSelect.SelectedItems
                test = vrtSelectedItem
            Next vrtSelectedItem

        End If

    Set iFileSelect = Nothing

End Sub

我希望它现在只显示某种类型的文件(在本例中为 XML),用户可以选择任何文件类型。

我已经通过一些创造性的谷歌搜索,但似乎无法找到解决方案,我觉得它应该很简单。

4

1 回答 1

13
Sub Main()
    Dim test As String
    SelectFiles test
    Debug.Print test
End Sub

Sub SelectFiles(ByRef test As String)

    Dim iFileSelect As FileDialog
    Set iFileSelect = Application.FileDialog(msoFileDialogOpen)
    With iFileSelect
        .AllowMultiSelect = True
        .Title = "Select XML Files"
        .Filters.Clear
        .Filters.Add "Extensible Markup Language Files", "*.xml"
        .InitialView = msoFileDialogViewDetails
        If .Show = -1 Then
            Dim vrtSelectedItem
            For Each vrtSelectedItem In iFileSelect.SelectedItems
                test = vrtSelectedItem
            Next vrtSelectedItem
        End If
    End With
    Set iFileSelect = Nothing
End Sub
于 2013-11-08T10:27:49.260 回答