Здравствуйте, уважаемые эксперты!
Понимаю, что вопросов о сохранения книги с помощью макроса великое множество, но найти именно то, с чем у меня проблема - не получилось. Поэтому надеюсь на вашу помощь.
Собственно вот макрос, который я составил:
Код |
---|
Sub Сохранение()
Папка = "D:\" & Range("A1")
Подпапка = Range("A2")
Путь = Папка & "\" & Подпапка
Название = Range("A3")
ИмяФайла = Путь & "\" & Название
If Dir(Папка, vbDirectory) = "" Then
MkDir (Папка)
ChDir (Папка)
Else: ChDir (Папка)
End If
If Dir(Путь, vbDirectory) = "" Then
MkDir (Путь)
ChDir (Путь)
Else: ChDir (Путь)
End If
ActiveWorkbook.SaveAs (ИмяФайла)
End Sub
|
Меня почти полностью устраивает, как он работает, если бы не одно но:
Когда я сохраняю файл под уже существующем именем, то Excel меня вполне справедливо спрашивает, хочу ли я перезаписать файл.
Если я отвечаю "НЕТ", то появляется ошибка:
Мне бы хотелось, чтобы если я ответил "НЕТ", то ошибка бы не вылезала.
Можно в принципе написать вначале On erroe resume next, но что-то мне подсказывает, что это не лучший вариант.
Может есть способ предотвратить именно эту ошибку? Или как-то завершить макрос при ответе "НЕТ"?