OpenFileDialog VBA (Powerpoint) Initial Directory

此生再无相见时 提交于 2019-12-23 18:54:28

问题


Please help me make my OpenFileDialog showing my PowerPoint project directory.

i tried .InitialDirectory = "C:\\" ,but it doesn't work. Can i adapt this to vba? Thanks.


回答1:


This is nearly copied from the Powerpoint VBA help. It uses FileDialog instead of OpenFileDialog(which I had difficulty finding in relation to PowerPoint). It sets the InitialFileName to C:\ so that it will prompt in that location. Just place this in a module, it should be easy to modify to your specific needs:

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


来源:https://stackoverflow.com/questions/12537439/openfiledialog-vba-powerpoint-initial-directory

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!