Проверьте наличие файла с помощью Excel VBA

VBA Check File Exists помогает проверить, существует ли файл в Location с помощью Excel VBA. После упоминания пути к файлу на компьютере, что если кто-то удалит файл или изменит путь к папке с файлом, очевидно, что в этом случае наш код выдаст ошибку. Чтобы решить эту проблему, мы можем сделать одну вещь, прежде чем мы действительно откроем файл, мы можем проверить, существует ли упомянутый файл или нет.

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

Как проверить, существует файл или нет?

  • Как Excel VBA знает, существует ли файл или нет ??
  • По умолчанию это не может !!!
  • Так как же тогда ??
  • Нам нужно использовать функцию под названием «Dir», чтобы проверить, существует файл или нет.

Что делает функция DIR?

Функция VBA DIR возвращает имя имени файла с его расширением в указанном пути к папке. Если в папке нет файла, она возвращает пустую строку.

Таким образом, используя эту функцию, мы можем на самом деле проверить, существует файл или нет. Даже без функции DIR мы можем проверить, существует файл или нет. Мы увидим некоторые примеры ниже.

Как использовать файл проверки VBA в Excel?

Мы узнаем, как использовать функцию проверки наличия файлов VBA, с несколькими примерами в Excel.

Вы можете скачать этот файл Excel с шаблоном проверки VBA здесь - Шаблон проверки VBA с файлом Excel существует

Пример № 1 - файл проверки VBA существует

Хорошо, давайте напишем некоторый код, чтобы проверить, существует файл или нет. Выполните следующие шаги, чтобы написать код самостоятельно.

Шаг 1: Для этого перейдите в окно VBA и в меню «Вставка» выберите «Модуль», как показано ниже.

Шаг 2: Запустите подпроцедуру.

Код:

 Sub File_Example () End Sub 

Шаг 3: Определите переменную как String.

Код:

 Sub File_Example () Dim FilePath As String End Sub 

Шаг 4: Теперь я хочу протестировать файл с именем «Глава-11. InputBoxes.xlsm ”в моем E-Drive”. Я назначу свой путь к файлу этой переменной.

Код:

 Sub File_Example () Dim FilePath As String FilePath = "D: \ Test File.xlsx" End Sub 

Шаг 5: Теперь определите еще одну переменную для применения функции DIR.

Код:

 Sub File_Example () Dim FilePath As String Dim FileExists As String FilePath = "D: \ Test File.xlsx" End Sub 

Шаг 6: Теперь для второй переменной откройте функцию DIR.

Код:

 Sub File_Example () Dim FilePath As String Dim FileExists As String FilePath = "D: \ Test File.xlsx" FileExists = Dir (End Sub 

Шаг 7: Функция DIR требует путь к файлу. Поскольку мы уже присвоили путь к файлу переменной «FilePath», мы можем просто передать эту переменную в функцию DIR.

Код:

 Sub File_Example () Dim FilePath As String Dim FileExists As String FilePath = "D: \ Test File.xlsx" FileExists = Dir (FilePath) End Sub 

Шаг 8: Теперь функция DIR возвращает только имя файла как «Глава-11. InputBoxes »из указанного пути к файлу. Итак, давайте покажем результат в окне сообщения.

Код:

 Sub File_Example () Dim FilePath As String Dim FileExists As String FilePath = "D: \ Test File.xlsx" FileExists = Dir (FilePath) MsgBox FileExits End Sub 

Шаг 9: Теперь запустите макрос, чтобы увидеть результат.

Поскольку в указанном пути существует файл, наша функция DIR отфильтровывает имя файла по огромному пути.

Шаг 10: Теперь я изменю имя файла на другое, чего нет в указанном пути.

Код:

 Sub File_Example () Dim FilePath As String Dim FileExists As String FilePath = "D: \ File.xlsx" FileExists = Dir (FilePath) MsgBox (FileExists) End Sub 

Шаг 11: Если я сейчас запусту код, он вернет пустую строку в окне сообщения.

Функция DIR лучше всего подходит для использования с оператором IF в VBA. Выше мы могли видеть только имя файла с его расширением, если оно существует, иначе мы могли видеть только пустую строку.

Пример № 2 - DIR с условием IF

Шаг 1: Но используя оператор IF с функцией DIR, мы можем изменить наши результаты. Для примера посмотрите на код ниже.

Код:

 Sub File_Example1 () Dim FilePath As String Dim FileExists As String FilePath = "C: \ Users \ cba_28 \ Desktop \ Alex \ Final Input.xlsm" FileExists = Dir (FilePath) Если FileExists = "" Then MsgBox ", файл не существует в упомянутый путь "Else MsgBox" Файл существует в упомянутом пути "End If End Sub 

Шаг 2: Здесь условие IF проверяет, является ли значение переменной «FileExists» ничем («») или нет. Если значение переменной - ничто («»), то он вернет результат как «Файл не существует в указанном пути», либо он вернет результат как «Файл существует в указанном пути»

Ниже приведен пример того же скриншота.

Используя функцию DIR, мы можем проверить, существует файл или нет.

Рекомендуемые статьи

Это руководство к VBA Check File Exists. Здесь мы обсудим, как использовать функцию проверки наличия файла в Excel VBA, а также с практическими примерами и загружаемым шаблоном Excel. Вы также можете просмотреть наши другие предлагаемые статьи -

  1. Функция копирования и вставки в VBA
  2. Функция подстроки Excel
  3. Индекс VBA вне диапазона
  4. Excel ISNUMBER Formula

Категория: