Evento Report.Error (Access)

O evento Error ocorre quando um erro de tempo de execução é produzido no Microsoft Access quando um relatório tem o foco.

Sintaxe

mais simples. Erro (DataErr, Response)

expressão Uma variável que representa um objeto Report .

Parâmetros

Nome Obrigatório/Opcional Tipo de dados Descrição
Erros de dados Obrigatório Integer O código de erro retornado pelo objeto Err quando ocorre um erro. Use o argumento DataErr com a função Error para mapear o número para a mensagem de erro correspondente.
Response Obrigatório Integer A configuração determina se uma mensagem de erro será ou não exibida. O argumento Response pode ser uma das seguintes constantes intrínsecas:
  • acDataErrContinue Ignore o erro e continue sem exibir a mensagem de erro padrão do Microsoft Access. Você pode fornecer uma mensagem de erro personalizada no lugar da mensagem de erro padrão.
  • acDataErrDisplay (Padrão) Exibe a mensagem de erro padrão do Access.

Valor de retorno

Nada

Comentários

Isso inclui erros do mecanismo de banco de dados do Access, mas não erros de tempo de execução no Visual Basic ou erros do ADO.

Para executar uma macro ou procedimento de evento quando esse evento ocorrer, defina a propriedade OnError como o nome da macro ou como [Event Procedure].

Ao executar um procedimento de evento ou uma macro quando um evento de Erro ocorre, você pode interceptar uma mensagem de erro do Access e exibir uma mensagem personalizada que transmite um significado mais específico para seu aplicativo.

Exemplo

O exemplo a seguir mostra como você pode substituir uma mensagem de erro padrão por uma mensagem de erro personalizada. Quando o Access retorna uma mensagem de erro indicando que encontrou uma chave duplicada (código de erro 3022), esse procedimento de evento exibe uma mensagem que fornece mais informações específicas do aplicativo aos usuários.

Para testar o exemplo, adicione o procedimento de evento a seguir a um formulário baseado em uma tabela com um número de identificação de funcionário exclusivo como chave de cada registro.

Private Sub Form_Error(DataErr As Integer, Response As Integer) 
    Const conDuplicateKey = 3022 
    Dim strMsg As String 
 
    If DataErr = conDuplicateKey Then 
        Response = acDataErrContinue 
        strMsg = "Each employee record must have a unique " _ 
            & "employee ID number. Please recheck your data." 
        MsgBox strMsg 
    End If 
End Sub

Suporte e comentários

Tem dúvidas ou quer enviar comentários sobre o VBA para Office ou sobre esta documentação? Confira Suporte e comentários sobre o VBA para Office a fim de obter orientação sobre as maneiras pelas quais você pode receber suporte e fornecer comentários.