FileDialog 对象 (Office)

提供文件对话框,其功能与 Microsoft Office 应用程序中标准的“打开”和“保存”对话框类似。

备注

使用 FileDialog 属性返回 FileDialog 对象。 FileDialog 属性位于各个 Office 应用程序的 Application 对象中。 属性采用单个参数 MsoFileDialogType,该参数确定属性返回的 FileDialog 对象的类型。 有四种类型的 FileDialog 对象:

  • 打开”对话框:允许用户选择一个或多个可以在主机应用程序中使用 Execute 方法打开的文件。

  • 另存为”对话框:允许用户选择一个文件,然后可以使用 Execute 方法将当前文件另存为该文件。

  • 文件选取器”对话框:允许用户选择一个或多个文件。 用户选择的文件路径将捕获到 FileDialogSelectedItems 集合中。

  • 文件夹选取器”对话框:允许用户选择路径。 用户选择的路径将捕获到 FileDialogSelectedItems 集合中。

每个主机应用程序只能创建 FileDialog 对象的单个实例。 因此,即使你创建多个 FileDialog 对象,FileDialog 对象的许多属性也会保留。 因此,在显示对话框之前,请确保根据需要适当地设置所有属性。

示例

要使用 FileDialog 对象显示文件对话框,你必须使用 Show 方法。 显示对话框后,在用户关闭对话框之前将不执行任何代码。 以下示例将创建并显示“文件选取器”对话框,然后在消息框中显示每个选定的文件。

Sub Main() 
 
 'Declare a variable as a FileDialog object. 
 Dim fd As FileDialog 
 
 'Create a FileDialog object as a File Picker dialog box. 
 Set fd = Application.FileDialog(msoFileDialogFilePicker) 
 
 'Declare a variable to contain the path 
 'of each selected item. Even though the path is aString, 
 'the variable must be a Variant because For Each...Next 
 'routines only work with Variants and Objects. 
 Dim vrtSelectedItem As Variant 
 
 'Use a With...End With block to reference the FileDialog object. 
 With fd 
 
 'Use the Show method to display the File Picker dialog box and return the user's action. 
 'The user pressed the button. 
 If .Show = -1 Then 
 
 'Step through each string in the FileDialogSelectedItems collection. 
 For Each vrtSelectedItem In .SelectedItems 
 
 'vrtSelectedItem is aString that contains the path of each selected item. 
 'Use any file I/O functions that you want to work with this path. 
 'This example displays the path in a message box. 
 MsgBox "The path is: " & vrtSelectedItem 
 
 Next vrtSelectedItem 
 'The user pressed Cancel. 
 Else 
 End If 
 End With 
 
 'Set the object variable to Nothing. 
 Set fd = Nothing 
 
End Sub

另请参阅

支持和反馈

有关于 Office VBA 或本文档的疑问或反馈? 请参阅 Office VBA 支持和反馈,获取有关如何接收支持和提供反馈的指南。