Выберите файл и отобразите путь - PullRequest
0 голосов
/ 17 октября 2019

Я пытаюсь, чтобы мой код позволил мне выбрать нужный файл в диалоговом окне, а затем я хочу, чтобы он показывал путь к файлу в текстовом поле.

 Sub SelectMonthlyFile()

   Dim Data As Office.FileDialog

   Set Data = Application.FileDialog(msoFileDialogFilePicker)

   With Data
     .AllowMultiSelect = False
     .Title = "Please select the file."
     .Filters.Clear
     .Filters.Add "Excel 2003", "*.xls"
     .Filters.Add "All Files", "*.*"

     If .Show = True Then

         Path = .SelectedItems(1)

     End If

    End With

 End Sub

Я показываю ошибку на Path = .SelectedItems(1), которая показывает, что переменная не определена. Я назвал свой путь к ячейке и предположил, что это поможет мне скопировать и вставить сюда путь к файлу.

1 Ответ

1 голос
/ 17 октября 2019

Предлагаю переименовать Data во что-то более значимое. Я изменил его на FileDialog. Причина вашей ошибки в том, что код не знает, что такое Path. Обратите внимание, что я пропустил очистку фильтра, он не нужен.

Option Explicit 'always have this

Dim strPath As String 'explicitly declare your variable

 Sub SelectMonthlyFile()

   Dim FileDialog As Office.FileDialog

   Set FileDialog = Application.FileDialog(msoFileDialogFilePicker)

   With FileDialog
     .AllowMultiSelect = False
     .Title = "Please select the file."
     .Filters.Add "Excel 2003", "*.xls"
     .Filters.Add "All Files", "*.*"

    'was anything selected?
     If .Show <> 0 Then
        strPath = .SelectedItems(1)
        Debug.Print strPath
     End If

    End With

 End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...