Você pode usar a ação de macro OnError no Access para especificar o que deve acontecer quando ocorrer um erro em uma macro.
Observação: A ação de macro OnError não está disponível nos aplicativos Web do Access.
Configuração
A ação de macro OnError tem os seguintes argumentos.
Argumento da ação |
Descrição |
||||||||
Acesse |
Especifique o comportamento geral que deve ocorrer quando um erro é encontrado. Clique na seta suspensa e clique em uma das seguintes configurações:
|
||||||||
Nome da macro |
Se o argumento Ir para for definido como Nome da Macro, digite o nome do submacro a ser usado para tratamento de erros. O nome que você digita deve corresponder a um nome de submacro na macro atual; você não pode inserir o nome de um objeto macro diferente. No exemplo abaixo, a sub macro ErrorHandler está contida no mesmo objeto macro que a ação de macro OnError . Esse argumento deve ficar em branco se o argumento Ir para é definido como Avançar ou Falhar. |
Comentários
-
A ação de macro OnError geralmente é colocada no início de uma macro, mas você também pode colocar a ação mais tarde na macro. As regras estabelecidas pela ação entrarão em vigor sempre que a ação for executada.
-
Se você definir o argumento Go toFail, o Access se comportará da mesma maneira se não houvesse nenhuma ação OnError na macro. Ou seja, se um erro for encontrado, o Access interromperá a macro e exibirá uma mensagem de erro padrão. O main usar para a configuração Fail é desativar qualquer tratamento de erro que você estabeleceu anteriormente em uma macro.
Exemplo
A macro a seguir demonstra o uso da ação macro OnError . Neste exemplo, a ação AoOcorrerErro especifica que o Access deve executar uma submacro de tratamento de erros personalizada chamada ErrorHandler quando ocorre um erro. Se ocorrer um erro em qualquer uma das ações a seguir, o Access irá para a submacro ErrorHandler. A submacro ErrorHandler exibe uma caixa de mensagem que se refere ao objeto MacroError para exibir informações sobre o erro.
Nome do submacro |
Ação |
Argumentos |
Onerror |
Acesse: Nome da macro Nome da macro: ErrorHandler |
|
[Ação 2] |
||
... |
||
[Ação n] |
||
Errorhandler |
Messagebox |
Mensagem: ="Error # " & [MacroError]. [Número] & " em " & [MacroError]. [ActionName] & " ação". Bip: Sim Tipo: Nenhum Título: Ocorreu erro |
Aqui está uma captura de tela do designer de macros do Access (Access versão 2010 e posterior) com o exemplo anterior. Nesse caso, a expressão na ação DefinirVarLocal dispara um erro porque está tentando dividir um número por zero. O Access se move para baixo até a submacro chamada ErrorHandler e exibe as informações de erro em uma caixa de mensagem.