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 - если мы выберем несколько файлов, тогда это будет ИСТИНА, иначе это будет ЛОЖЬ, которая в любом случае является значением по умолчанию.

Как открыть файл с помощью GetOpenFileName в Excel VBA?

Ниже приведены различные примеры открытия файла с помощью приложения GetOpenFileName в Excel VBA.

Вы можете скачать этот шаблон Excel VBA GetOpenFileName здесь - Шаблон Excel VBA GetOpenFileName

Excel VBA GetOpenFileName - Пример № 1

В этом примере мы увидим, как сначала открыть файл Excel. Выполните следующие шаги, чтобы использовать GetOpenFileName в Excel VBA:

Шаг 1: Перейдите в меню «Вставка» и нажмите «Модуль», чтобы открыть его.

Шаг 2: Напишите подкатегорию VBA Getopenfilename или выберите любое другое имя в соответствии с вашим выбором, чтобы определить Подкатегорию.

Код:

 Sub OpenFile () End Sub 

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

Код:

 Sub OpenFile () Dim A As String End Sub 

Шаг 4: Теперь в определенной переменной A используйте Application, как показано ниже.

Шаг 5: Теперь выполните поиск и выберите GetOpenFileName из активированного списка приложений, как показано ниже.

Шаг 6: Теперь используйте MsgBox, чтобы получить местоположение выбранного файла.

Код:

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

Шаг 7: Теперь скомпилируйте код, нажав функциональную клавишу F5, и запустите его, нажав кнопку Play. Теперь просмотрите файл, который мы хотим выбрать. Здесь мы пошли по пути и выбрали файл Excel с именем Test File, который обычно находится в формате .xlsx . Нажмите на Открыть.

Он покажет путь к этому файлу, который мы выбрали ранее в окне сообщения, как показано ниже.

Шаг 8: Теперь по синтаксису мы будем использовать Filefilter в скобках приложения GetOpenFilename. Как мы знаем, он предназначен для выбора типа файла, который мы хотим открыть. Поэтому мы поместим для этого «Файлы Excel», как показано ниже.

Код:

 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, как показано ниже.

А если мы не выберем какой-либо файл и не выйдем из окна, то по умолчанию будет выдано сообщение False .

Плюсы 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

Категория: