|
|||||||
GetFilePath - Диалог выбора файлов(вернет словарь полных имен)
Время создания: 16.03.2019 23:43
Текстовые метки: FileDialog, mso
Раздел: Разные закладки - VBA - GetOpen
Запись: xintrea/mytetra_db_adgaver_new/master/base/15060691436un904tt2m/text.html на raw.githubusercontent.com
|
|||||||
|
|||||||
'================================================================== '##### Вернет словарь(vfccbd) полных имен выбранных файлов ' '------------------------------------------------------------------ Sub testListFile() 'Microsoft Access Database (.mdb) strPath = "<path_to_folder_or_file>" aFile = ListFile(strPath, "Выбрать файлы", "*.mdb*;*.accdb*", "Access files", "Выбрать", True).Keys Desktop Intelligence Document (.rep) env$ = Environ("COMPUTERNAME") env$ = Environ("Path") strUserName$ = Environ("USERNAME") strPath = "C:\Users\" & Environ("USERNAME") & "\Downloads\" aFile = ListFile(strPath:=strPath, _ strTitle:="Выбрать данные из IFF за ТСМ текущего рабочего дня", _ strFilterExtention:="*.xlsx*;*.xls*", _ strFilterDescription:="Excel File", _ strButtonName:="ЖГИ", _ blnMultiSelect:=False).Keys h = UBound(aFile) If UBound(aFile) < 0 Then Exit Sub 'если не выбрано ни одного файла, то выходим End Sub Function ListFile(Optional ByVal strPath As String = "c:\", _ Optional ByVal strTitle As String = "Выберите файл для обработки", _ Optional ByVal strFilterExtention As String = "*.*", _ Optional ByVal strFilterDescription As String = "Файлы счетов", _ Optional ByVal strButtonName As String, _ Optional ByVal blnMultiSelect As Boolean = True) As Object 'strTitle - 'заголовок окна диалога 'strButtonName - надпись на кнопке 'blnMultiSelect - множественный выбор ' Dim ListFile() Dim oFD As FileDialog Dim x, lf As Long Set ListFile = CreateObject("Scripting.Dictionary"): ListFile.comparemode = 0 'Открыть диалог выбора файла Set oFD = Application.FileDialog(msoFileDialogFilePicker) With oFD 'используем короткое обращение к объекту .AllowMultiSelect = blnMultiSelect .Title = strTitle '"Выбрать файлы отчетов FMD" .ButtonName = strButtonName '"Выбрать файлы Excel" .Filters.Clear 'очищаем установленные ранее типы файлов ' .Filters.Add "Excel files", "*.xlsx*;*.xls*", 1 'устанавливаем возможность выбора только файлов Excel .Filters.Add strFilterDescription, strFilterExtention, 1 'устанавливаем возможность выбора только файлов Excel .FilterIndex = 1 'устанавливаем тип файлов по умолчанию - Text files(Текстовые файлы) .InitialFileName = strPath '& "nonSSARDetail" '"C:\Temp\Книга1.xlsx" 'назначаем папку отображения и имя файла по умолчанию .InitialView = msoFileDialogViewDetails 'вид диалогового окна(доступно 9 вариантов) If .Show = 0 Then Exit Function 'показывает диалог 'цикл по коллекции выбранных в диалоге файлов 'словарь имен файлов For lf = 1 To .SelectedItems.Count ' ll = .SelectedItems mainKey = .SelectedItems(lf) 'считываем полный путь к файлу If ListFile.exists(mainKey) Then Else ListFile.Add mainKey, ListFile.Count End If Next End With
' Range("strLastPath").Value = oFD.InitialFileName 'strPath
End Function '================================================================== |
|||||||
Так же в этом разделе:
|
|||||||
|
|||||||
|