Excel VBA GetOpenFileName

Існує багато способів відкрити будь-який файл. Але є також кілька способів відкрити той самий файл. У VBA у нас є різні функції, за допомогою яких ми можемо відкрити будь-який файл. Ми можемо відкрити файл, поставивши шлях до файлу у коді VBA, ми можемо навіть записати цей процес. Але найкращий спосіб відкрити будь-який файл у VBA - це за допомогою програми VBA GetOpenFileName . Як видно з назви, це робиться суто для подання заявки на відкриття будь-якого файла в VBA.

В інших функціях або програмах, що працюють за тим самим принципом, нам може знадобитися скопіювати файл, розділений косою рисою, зберігаючи ім'я папки та точні пробіли між косою рисою. Також нам може знадобитися ввести точне ім’я файлу разом з розширенням, яке ми хочемо відкрити. Але у VBA GetOpenFileName нам просто потрібно вибрати файл із місця. Це дасть вікно, звідки ми можемо переглядати файл, де він зберігається, і розширення файлу також буде виправлено.

Синтаксис GetOpenFilename у VBA

Давайте розглянемо нижче формулу для GetOpenFilename в Excel VBA.

Нижче наведено аргумент програми VBA GetOpenFileName.

  • FileFilter - У цьому ми можемо визначити, який тип файлу ми хочемо бачити. Наприклад, якщо ми згадаємо "Файли Excel, *. Xlsx", вони знайдуть і покажуть усі файли Excel формату .xlsx. Якщо ми згадаємо "Файли PDF, *. Pdf", вони знайдуть і покажуть всі файли pdf.
  • FilterIndex - Цим ми можемо дозволити користувачеві обмежувати вибір типу файлу. Ми можемо вказати кількість файлів, які нам потрібно показати.
  • Назва - Показує вибраний файл у заголовку діалогового вікна.
  • ButtonText - Це лише для користувачів MacBook.
  • MultiSelect - Якщо ми виберемо декілька файлів, то це буде ПРАВИЛЬНО, інакше це буде FALSE, що так чи інакше є значенням за замовчуванням.

Як відкрити файл за допомогою GetOpenFileName в Excel VBA?

Нижче наведено різні приклади відкриття файлу за допомогою програми GetOpenFileName в excel VBA.

Ви можете завантажити цей шаблон Excel для GetOpenFileName VBA тут - VBA Шаблон Excel GetOpenFileName Excel

Excel VBA GetOpenFileName - Приклад №1

У цьому прикладі ми побачимо, як спершу відкрити файл excel. Для використання GetOpenFileName в Excel VBA виконайте наведені нижче дії:

Крок 1: Перейдіть до меню Вставка та натисніть Модуль, щоб відкрити його.

Крок 2: Напишіть підкатегорію VBA Getopenfilename або оберіть будь-яке інше ім'я, згідно з вашим вибором, щоб визначити підкатегорію.

Код:

 Sub OpenFile () Кінець Sub 

Крок 3: Тепер визначте змінну і надайте їй рядок, як показано нижче. Вибір рядка, тому що ми будемо вибирати або вибирати ім'я файлу.

Код:

 Sub OpenFile () Dim A As String End Sub 

Крок 4: Тепер у визначеній змінній A використовуйте додаток, як показано нижче.

Крок 5. Тепер знайдіть і виберіть GetOpenFileName з активованого списку програм, як показано нижче.

Крок 6: Тепер використовуйте MsgBox, щоб ми отримали розташування вибраного файлу.

Код:

 Sub OpenFile () Dim A As String A = Application.GetOpenFilename () MsgBox A End Sub 

Крок 7: Тепер складіть код, натиснувши функціональну клавішу F5 і запустіть його, натиснувши на кнопку Відтворити. Тепер перегляньте файл, який ми хочемо вибрати. Тут ми пройшли шлях і вибрали файл excel, названий як тестовий файл, який зазвичай знаходиться у форматі .xlsx . Клацніть на Відкрити.

Він покаже шлях до цього файлу, який ми обрали раніше, у вікні повідомлень, як показано нижче.

Крок 8: Тепер відповідно до синтаксису ми будемо використовувати Filefilter у дужці програми GetOpenFilename. Як ми знаємо, він призначений для вибору типу файлу, який ми хочемо відкрити. Тож ми поставимо для нього "Excel Files", як показано нижче.

Код:

 Sub OpenFile () Dim A As String A = Application.GetOpenFilename (Filefilter: = "Файли Excel") MsgBox A End Sub 

Крок 9: Тепер покладіть розширення файлу Excel, яке ми вибрали раніше. Це було " .xlsx ", тому ми збережемо це також у FileFilter.

Код:

 Sub OpenFile () Dim A As String A = Application.GetOpenFilename (Filefilter: = "Файли Excel, * .xlsx") MsgBox A End Sub 

Крок 10: Тепер ми знову запустимо повний код. У папці перегляду ми отримаємо лише файли Excel, які доступні в тій папці, яку ми переглядали раніше.

І якщо ми спробуємо побачити будь-який інший формат файлу або розширення у файлах Excel, що випадає, він знову покаже лише файли Excel.

Excel VBA GetOpenFileName - Приклад №2

Таким же чином ми можемо побачити відкриття імені файлу з розширенням " .pdf ". Для використання GetOpenFileName в Excel VBA виконайте наведені нижче дії:

Крок 1: Тепер знову напишіть код, який ми бачили в прикладі-1.

Код:

 Sub OpenFile1 () Dim A As String A = Application.GetOpenFilename () MsgBox A End Sub 

Крок 2: Він перенесе нас до того самого вікна або ще переглянемо ту саму папку. Тепер виберіть будь-який PDF-файл та натисніть кнопку Відкрити.

Це дасть нам шлях до вибраного файлу.

Крок 3. Тепер, щоб отримати вибраний файл PDF, у синтаксисі FileFilter напишіть «Файли PDF» замість «Файли Excel» та виберіть розширення PDF, яке є « .pdf », як показано нижче.

Код:

 Sub OpenFile1 () Dim A As String A = Application.GetOpenFilename (Filefilter: = "Файли PDF, * .pdf") MsgBox A End Sub 

Крок 4: Знову складіть код і запустіть його. Ми отримаємо папку браузера, щоб відкрити файли. У цьому випадку ми отримаємо лише файли з розширенням “ .pdf ”, як показано нижче.

І якщо спробувати відфільтрувати інші формати файлів, то це знову дозволить нам бачити лише файли PDF лише як показано нижче.

І якщо ми не виберемо жодного файлу і не вийдемо з вікна, він видасть повідомлення за замовчуванням, яке не відповідає дійсності .

Плюси Excel VBA GetOpenFileName

  • VBA GetOpenFileName допомагає нам безпосередньо відкривати файл, не вставляючи шлях цього файлу у код VBA.
  • Нам не потрібно кілька разів змінювати шлях до файлів.
  • Перегляд та вибір файлів через це так само просто, як перейти до цієї папки, щоб відкрити її.

Мінуси Excel VBA GetOpenFileName

  • Нам потрібно змінити розширення файлу, який ми хочемо відкрити, якщо є зміни.

Що потрібно пам’ятати

  • Змінюйте розширення файлу, коли вам потрібно відкрити іншу версію файлу.
  • Поле повідомлень з повідомленням як FALSE - це за замовчуванням повідомлення, яке з’являється кожного разу, коли ми не виберемо жодного файлу для відкриття.
  • Такий процес не може бути створений за допомогою функції Record Macro.
  • Не забудьте зберегти файл у форматі Excel, що підтримується макросом. Так що записаний код VBA буде збережений.

Рекомендовані статті

Це посібник для VBA GetOpenFileName. Тут ми обговорюємо, як відкрити файл за допомогою програми GetOpenFileName в Excel, використовуючи код VBA разом з деякими практичними прикладами та шаблоном Excel, який можна завантажити. Ви також можете ознайомитися з іншими запропонованими нами статтями -

  1. Знайти та замінити VBA (приклади)
  2. Групові робочі таблиці в Excel
  3. Робоча книжка VBA
  4. Посилання на клітинку в Excel

Категорія: