2012-09-21 63 views

回答

6

这几乎从Powerpoint VBA帮助中复制而来。它使用FileDialog而不是OpenFileDialog(我很难找到与PowerPoint相关的内容)。它将InitialFileName设置为C:\,以便它在该位置提示。只需将其放置在模块中,应该很容易根据您的具体需求进行修改:

Sub fileDialogExample() 
    'Declare a variable as a FileDialog object. 
    Dim fd As FileDialog 
    'Declare a variable for the directory path. 
    Dim directory As String 
    'Set the directory path 
    directory = "C:\" 
    '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 
     'Change the initial directory\filename 
     .InitialFileName = directory 
     '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. 
       'You can 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 
+0

非常感谢。 ;) – Andrei20193