Макрокоманда «ПриОшибке»

С помощью макрокоманды ПриОшибке можно указать действие, выполняемое при возникновении ошибки в макросе.

Примечание : Макрокоманда "ПриОшибке" недоступна в веб-приложениях Access.

Настройка

Макрокоманда ПриОшибке имеет следующие аргументы:

Аргумент макрокоманды

Описание

Перейти

Определяет общее поведение после возникновения ошибки. Щелкните стрелку раскрывающегося списка и выберите одно из следующих значений:

Параметр

Описание

Далее

Access записывает подробные сведения об ошибке в объекте ОшибкаМакроса, но не останавливает макрос. Выполнение продолжается со следующей макрокоманды.

Имя макроса

Access останавливает выполнение текущего макроса и запускает макрос, указанный в аргументе Имя макроса.

Сбой

Access останавливает выполнение текущего макроса и отображает сообщение об ошибке.

Имя макроса

Если аргумент Перейти имеет значение Имя макроса, введите имя макроса, который будет использоваться для обработки ошибок. Введенное имя должно соответствовать имени вложенного макроса для текущего макроса; нельзя указать имя другого объекта. В следующем примере макрос "ОбработчикОшибок" содержится в том же объекте макроса, что и макрокоманда ПриОшибке.

Этот аргумент должен оставаться пустым, если аргумент Перейти имеет значение Далее или Сбой.

Примечание : Окно конструктора макроса было изменено в Access 2010. Если вы используете Access 2007, имя макроса, который будет использоваться для обработки ошибок, должно соответствовать имени в столбце Имя макроса текущего макроса.

Замечания

  • Макрокоманда ПриОшибке обычно находится в начале макроса, но ее можно поместить и дальше. Правила, определяемые этой макрокомандой, будут действовать независимо от места ее запуска.

  • Если аргумент Перейти имеет значение Сбой, макрокоманда не влияет на процедуры Access: они выполняются так же, как если бы макрокоманда ПриОшибке отсутствовала, то есть при возникновении ошибки Access останавливает работу макроса и выводит стандартное сообщение об ошибке. Основное назначение параметра Сбой — выключение обработки ошибки, заданной в макросе ранее.

Пример

Следующий макрос демонстрирует использование макрокоманды ПриОшибке. В данном примере макрокоманда ПриОшибке указывает, что при возникновении ошибки будет выполнен пользовательский вложенный макрос "ОбработчикОшибок". Если в любой из последующих макрокоманд произойдет ошибка, Access перейдет к вложенному макросу "ОбработчикОшибок". Макрос "ОбработчикОшибок" отображает окно сообщения с данными об ошибке из объекта ОшибкаМакроса.

Имя вложенного макроса

Макрокоманда

Аргументы

ПриОшибке

Перейти: Имя макроса

Имя макроса: ОбработчикОшибок

[Макрокоманда 2]

...

[Макрокоманда n]

ОбработчикОшибок

Окно сообщения

Сообщение: ="Ошибка" & [MacroError].[Номер] & "в макрокоманде" & [MacroError].[ИмяМакрокоманды].

Сигнал: Да

Тип: Отсутствует

Заголовок: Произошла ошибка

Ниже показан снимок экрана с конструктором макросов Access (в Access 2010 или более поздней версии), в котором настроен макрос из предыдущего примера. В этом случае выражение в макрокоманде ЗадатьЛокПеременную вызывает ошибку из-за попытки деления на нуль. Access переходит к вложенному макросу с именем "ОбработчикОшибок" и выводит окно сообщения со сведениями об ошибке.

Рабочая область конструирования макросов Access с макрокомандой "ПриОшибке".

Совершенствование навыков
Перейти к обучению
Первоочередный доступ к новым возможностям
Присоединиться к программе предварительной оценки Office

Были ли сведения полезными?

Спасибо за ваш отзыв!

Благодарим за отзыв! Возможно, будет полезно связать вас с одним из наших специалистов службы поддержки Office.

×