Добрый день!
Подскажите, пожалуйста, как вызвать диалог выбора файла (не открытия), чтобы просто получить его полный путь?
Этот код открывает файл сразу:
dlgAnswer = Application.Dialogs(xlDialogOpen).Show
Диалог выбора файла
Модератор: Naeel Maqsudov
- EducatedFool
- Сообщения: 197
- Зарегистрирован: 06 апр 2008, 14:03
- Откуда: Россия, Урал
- Контактная информация:
Пример для выбора файла:
Тут тоже есть нечто подобное
Пример для выбора папки:
Ну и здесь поглядите.
Код: Выделить всё
[color=darkblue]Sub[/color] test()
[color=darkblue]Dim[/color] ИмяФайла [color=darkblue]As[/color] [color=darkblue]String[/color]
ИмяФайла = Application.GetOpenFilename("Мои картинки (*.jpg), *.jpg")
[color=darkblue]End[/color] [color=darkblue]Sub[/color]
Пример для выбора папки:
Код: Выделить всё
[color=darkblue]Function[/color] GetFolderPath([color=darkblue]Optional[/color] [color=darkblue]ByVal[/color] Title [color=darkblue]As[/color] [color=darkblue]String[/color] = "Выберите папку", [color=darkblue]Optional[/color] [color=darkblue]ByVal[/color] InitialPath [color=darkblue]As[/color] [color=darkblue]String[/color] = "c:\") [color=darkblue]As[/color] [color=darkblue]String[/color]
GetFolderPath = "": PS = Application.PathSeparator
[color=darkblue]With[/color] Application.FileDialog(msoFileDialogFolderPicker)
.ButtonName = "Выбрать": .Title = Title: .InitialFileName = InitialPath
[color=darkblue]If[/color] .Show = -1 [color=darkblue]Then[/color] GetFolderPath = .SelectedItems(1): [color=darkblue]If[/color] [color=darkblue]Not[/color] Right$(GetFolderPath, 1) = PS [color=darkblue]Then[/color] GetFolderPath = GetFolderPath & PS
[color=darkblue]End[/color] [color=darkblue]With[/color]
[color=darkblue]End[/color] [color=darkblue]Function[/color]
[color=darkblue]Sub[/color] ПримерСВыборомПапки()
[color=green]' например, так:[/color]
MsgBox GetFolderPath
[color=green]'или так:[/color]
MsgBox GetFolderPath("Выберите папку с нужными файлами", "C:\WINDOWS\system32\")
[color=darkblue]End[/color] [color=darkblue]Sub[/color]
Макросы для Excel, Word, CorelDRAW. Быстро, профессионально, недорого. http://ExcelVBA.ru/
Благодарности принимаются на кошелёк WebMoney: R318574877619 и Яндекс.Деньги: 41001335672216
Благодарности принимаются на кошелёк WebMoney: R318574877619 и Яндекс.Деньги: 41001335672216
- Busine2009
- Сообщения: 322
- Зарегистрирован: 18 июл 2009, 15:34
- Контактная информация:
Код для Excel:
Код: Выделить всё
Sub main()
ИмяФайла = Application.GetOpenFilename
MsgBox ИмяФайла
End Sub