Share via


FileDialog 物件 (Office)

提供類似於 Microsoft Office 應用程式中標準 [開啟] 和 [儲存] 對話方塊功能的檔案對話方塊功能。

備註

使用 FileDialog 屬性可傳回的 FileDialog 物件。 FileDialog 屬性位於每個個別的 Office application 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 支援與意見反應