Я генерирую запрос и сообщаю через VBA. У меня есть возможность спросить пользователя, хотят ли они вывести отчет в виде снимка. Сначала я спрашиваю их, хотят ли они сделать снимок. Если они говорят нет, ничего не происходит. Если они скажут «да», они получат подсказку с вопросом, где они хотят ее сохранить.
Все прекрасно работает, за исключением случаев, когда они говорят «да», а затем нажимают «Отмена» в приглашении, возникает ошибка времени выполнения 2501 о том, что действие отчета было отменено. Вот код.
DoCmd.OpenReport "CONCERNS", acViewPreview, lstFee.Value & " DETAILS"
If MsgBox("Do you wish to create a snapshot of this report?", vbQuestion + vbYesNo) = vbYes Then
DoCmd.OutputTo acReport, "CONCERNS", "SnapshotFormat(*.snp)", ""
End If
Это также конец моей процедуры, поэтому мне все равно, произойдет ли здесь ошибка, поскольку все важные вещи уже произошли. Я просто знаю, что какая-то обезьяна где-то перевернется, если увидит это. Есть ли способ справиться с этой ошибкой? On Error Resume Next не является опцией, потому что это сделало бы отладку кошмаром в будущем. Похоже, я ищу что-то вроде Try / Catch, но я не думаю, что VBA это поддерживает.