Как определить статус обработки ошибок в VBA?

Обработчик ошибок в VBA можно настроить так, чтобы он прерывался только при ошибках, если нет обработчика ошибок выше в стеке вызовов, перейдя к Tools->Options->General и установив для перехвата ошибок значение Break on unhandled errors.

Есть ли способ определить, включен ли отлов ошибок в этот параметр? В этом руководстве для разработчиков говорится, что это невозможно обнаружить, но я хотел бы предупредить пользователя, если они запускают приложение с неверным набором перехватчиков ошибок, поэтому я могу быть уверен, что обработчики ошибок более высокого уровня перехватят все исключения.

РЕДАКТИРОВАТЬ: я не могу найти документацию MSDN для подтверждения, но из различных тем форума похоже, что проблема в том, что Application.SetOption и Application.GetOption недоступны в Excel VBA. Однако они доступны в объекте Access Application — странное несоответствие.


person sigil    schedule 03.09.2015    source источник
comment
Был в VB6, но я не верю, что он когда-либо попадал в VBA. i = Application.GetOption (отлов ошибок)   -  person MatthewD    schedule 03.09.2015


Ответы (1)


Чтобы процитировать один из моих любимых ответов SO:


Краткий ответ: Нет.
Длинный ответ: Нееееет.


Значение этого параметра хранится на уровне приложения, к которому у VBA нет доступа, поскольку он не является частью стандартного объекта приложения методы или свойства

person SierraOscar    schedule 03.09.2015