Excel VBA FileDialog
Під час роботи може виникнути певний сценарій, коли нам потрібно відкрити якісь інші робочі книжки або будь-які інші файли, щоб імпортувати дані, або взяти довідку. Є один спосіб надати шлях до нашого коду в VBA, який відкриє нам файл або папку. Але що робити, якщо ми не пам'ятаємо шлях, як можна відкрити файл. Можливо, нам доведеться спочатку шукати шлях, а потім знову надавати шлях. VBA постачається з рішенням, яке відоме як FileDialog.
FileDialog - це властивість у VBA, яка дозволяє нам відкривати файл або папку із шляху. Використовуючи цю властивість, користувачеві не потрібно вказувати шлях папки, а користувач може вибрати шлях. FileDialog має лише чотири властивості. Вони також відомі як константи цієї властивості. Вони такі:
- msoFileDialogFilePicker : Це дозволяє користувачеві вибрати файл.
- msoFileDialogFolderPicker : це дозволяє користувачеві вибрати папку.
- msoFileDialogOpen : Це дозволяє користувачеві відкрити файл.
- msoFileDialogSaveAs: Це дозволяє користувачеві зберегти файл.
Метод використання цього об’єкта в VBA полягає в наступному.
Application.FIledialog (тип файлового журналу)
Тип FileDialog може бути будь-яким із перерахованих вище чотирьох типів. Тепер давайте використаємо цей об’єкт у прикладах, щоб більш чітко дізнатися про цю властивість об'єкта.
Як використовувати Excel VBA FileDialog?
Нижче наведено різні приклади використання FileDialog в Excel з використанням коду VBA.
Ви можете завантажити цей шаблон файлу VBA FileDialog Excel тут - VBA FileDialog Excel ШаблонExcel VD FileDialog - приклад №1
Спочатку давайте допоможемо користувачеві вибрати файл із пункту призначення. У цьому прикладі користувач вибере файл із папки, і ми відобразимо шлях до обраного файлу.
Виконайте наведені нижче дії, щоб використовувати Excel FileDialog Excel:
Крок 1: Перейдіть на вкладку Developers і натисніть на Visual Basic.
Крок 2. Відкрийте модуль у меню Вставка, як показано нижче.
Крок 3: Запустіть підпроцедуру, щоб почати працювати на прикладі.
Код:
Sub SelectFile () Закінчення Sub
Крок 4: Оголосіть змінну як Filedialog, як показано нижче.
Код:
Sub SelectFile () Файл розміру як FileDialog End Sub
Крок 5: Тепер давайте використаємо цей об’єкт із методу Application.Filedialog наступним чином.
Крок 6: Після відкриття дужок ми можемо побачити опцію для чотирьох типів FileDialog, як показано на зображенні нижче.
Крок 7: Виберіть параметр типу Filedialog як msoFileDialogFilePicker
Код:
Sub SelectFile () Dim-файл як FileDialog Встановити файл = Application.FileDialog (msoFileDialogFilePicker) Кінець Sub
Крок 8: Тепер нам потрібно зробити діалогове вікно для цього прикладу, використовуючи Звіт із наступним чином.
Код:
Sub SelectFile () Dim-файл як FileDialog Встановити файл = Application.FileDialog (msoFileDialogFilePicker) з кінцем файлу з End Sub
Крок 9: Якщо є якісь фільтри, нам потрібно очистити фільтри, поставити крапковий оператор і написати запис, як показано нижче.
Код:
Sub SelectFile () Дим-файл як FileDialog Встановити файл = Application.FileDialog (msoFileDialogFilePicker) з файлом .Filters.Clear End з End Sub
Крок 10: Тепер ми хочемо, щоб користувач вибирав відразу декілька файлів або один файл? Для цього прикладу давайте дотримуватись одного файлу одночасно, тому використовуйте .Allowmultiselect як хибний.
Код:
Sub SelectFile () Дим-файл як FileDialog Встановити файл = Application.FileDialog (msoFileDialogFilePicker) з файлом .Filters.Clear .AllowMultiSelect = Помилковий кінець з кінцевим підзаголовом
Крок 11: Тепер для того, щоб показати діалогове вікно, ми можемо записати. Показати діалогове вікно наступним чином.
Код:
Sub SelectFile () Дим-файл як FileDialog Встановити файл = Application.FileDialog (msoFileDialogFilePicker) з файлом .Filters.Clear .AllowMultiSelect = Невірно. Показати кінець з End Sub
Крок 12: Після виконання вищевказаного коду ми можемо побачити діалогове вікно наступним чином.
Крок 13: Оскільки нам потрібно відобразити вибраний шлях користувача, оголосимо іншу змінну як рядок у коді.
Код:
Sub SelectFile () Dim-файл як FileDialog Dim Path As String Set File = Application.FileDialog (msoFileDialogFilePicker) з файлом .Filters.Clear .AllowMultiSelect = False. Показувати кінець кінцем Sub
Крок 14: Ми використовуватимемо оператор selecteditems, щоб знайти шлях для обраного користувача файлу та зберегти його у нашій змінній наступним чином.
Код:
Sub SelectFile () Файл dim як файл FileDialog Dim Path As String Set File = Application.FileDialog (msoFileDialogFilePicker) з файлом .Filters.Clear .AllowMultiSelect = False .Show Path = .SelectedItems (1) Закінчити кінцем Sub
Крок 15: Після повідомлення із заявою використовуйте функцію msgbox для відображення адреси вибраного файлу.
Код:
Sub FileFile () Dim-файл як FileDialog Dim Path As String Set File = Application.FileDialog (msoFileDialogFilePicker) з файлом .Filters.Clear .AllowMultiSelect = False .Show Path = .SelectedItems (1) End with MsgBox Path End Sub
Крок 16: Виконаємо вищезгаданий код і виберемо файл і натиснемо ОК, щоб побачити шлях наступним чином.
Excel VD FileDialog - приклад №2
Тепер давайте подивимось на інший варіант об’єкта FileDialog VBA, який є msoFileDialogSaveAs. Ця властивість використовується для збереження файлу на будь-якому шляху. Виконайте наведені нижче дії, щоб використовувати Excel FileDialog Excel.
Крок 1: У цьому ж модулі напишемо ще одну підпроцедуру для збереження файлу наступним чином.
Код:
Sub SaveFile () Закінчення Sub
Крок 2: Тепер оголосимо дві змінні одна як рядок, а інша - як ціле число.
Код:
Sub SaveFile () Dim Choice As Integer, Path As String End Sub
Крок 3: Тепер давайте зробимо діалогове вікно видимим для користувача, використовуючи властивість show наступним чином.
Код:
Sub SaveFile () Dim Choice As Integer, Path As String Choice = Application.FileDialog (msoFileDialogSaveAs) .Show End Sub
Крок 4: Тепер використовуйте оператор IF для визначення вибору користувача наступним чином.
Код:
Sub SaveFile () Dim Choice As Integer, Path As String Choice = Application.FileDialog (msoFileDialogSaveAs). Покажіть, якщо Choice 0, то завершіть Sub
Крок 5: Тепер давайте нам обраний користувачем шлях у нашій змінній шляху наступним чином.
Код:
Sub SaveFile () Dim Choice As Integer, Path As String Choice = Application.FileDialog (msoFileDialogSaveAs) .Show If Choice 0 then Path = Application.FileDialog (msoFileDialogSaveAs) .SelectedItems (1) End Sub
Крок 6: Тепер покажемо результат за допомогою функції msgbox і закінчимо IF Loop.
Код:
Sub SaveFile () Dim Choice As Integer, Path As String Choice = Application.FileDialog (msoFileDialogSaveAs) .Show If Choice 0 then Path = Application.FileDialog (msoFileDialogSaveAs) .SelectedItems (1) MsgBox Path End If End Sub
Крок 7: Тепер виконайте вищевказаний код і побачите результат, він відкриє діалогове вікно для збереження файлу.
Крок 8: Введіть ім'я файлу та натисніть кнопку «Зберегти», нам буде показано Шлях до файлу наступним чином.
Що потрібно пам’ятати
- FileDialog - це властивість об'єкта VBA.
- Нам не потрібно вказувати шлях до коду за допомогою цього об’єкта.
- Використовуючи оператор крапки, ми можемо бачити та використовувати властивості об’єкта IntelliSense.
Рекомендовані статті
Це посібник до VBA FileDialog. Тут ми обговорюємо, як використовувати об'єкт FileDialog в Excel за допомогою коду VBA разом з деякими практичними прикладами та шаблоном Excel, який можна завантажити. Ви також можете ознайомитися з іншими запропонованими нами статтями -
- Перевірка файлу VBA існує
- Розв’яжіть рівняння в Excel
- Видалити файл VBA
- Як друкувати етикетки з Excel?
- Приклади для написання коду VBA