VBA: проверьте, существуют ли файлы - PullRequest
0 голосов
/ 20 мая 2019

Я создаю презентацию PowerPoint, которая получает данные и слайды из разных файлов Excel и PowerPoint. Базовый код работает, теперь я должен очистить его и разобраться с такими вопросами, как «что, если файл не существует?»

В связи с этим мне нужен совет. Я хочу, чтобы произошли две вещи: я хочу, чтобы пользователь знал об отсутствующих файлах, но также и о том, что код продолжает выполняться (один отсутствующий файл не должен сбивать весь макрос). Как мне сделать это чистым / читабельным способом?

Моя идея состояла бы в том, чтобы проверить, существуют ли файлы до фактического кода с чем-то вроде

If Dir("File Path") = "" Then
   MsgBox "File doesn't exist"

Однако в этом случае мне также нужен макрос, чтобы пропустить часть кода с отсутствующими файлами. При первоначальной проверке я мог создать переменную типа File1Exists = True, которая переключается на False, если файл не существует. И затем для каждой части кода / каждой подпрограммы я мог бы выполнить оператор If, чтобы проверить, верно ли это условие.

Это должно сработать, но действительно ли это лучшее решение? Похоже на кучу кода для такой простой проблемы. У кого-нибудь есть идея получше?

1 Ответ

2 голосов
/ 20 мая 2019

Что-то вроде:

Dim file_exists as Boolean
file_exists = (Dir("File Path") <> "")

If file_exists Then
  ....
Else
  ....
End If
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...