Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Devolve ou define um valor numérico que especifica um erro. Número é a propriedade predefinida do objeto Err . Leitura/gravação.
Comentários
Ao devolver um erro definido pelo utilizador a partir de um objeto, defina Err.Number ao adicionar o número que selecionou como código de erro à constante vbObjectError . Por exemplo, utilize o seguinte código para devolver o número 1051 como um código de erro:
Err.Raise Number := vbObjectError + 1051, Source := "SomeClass"
Exemplo
O primeiro exemplo ilustra uma utilização típica da propriedade Número numa rotina de processamento de erros. O segundo exemplo examina a propriedade Número do objeto Err para determinar se um erro devolvido por um objeto de Automatização foi definido pelo objeto ou se foi mapeado para um erro definido pelo Visual Basic.
Tenha em atenção que o vbObjectError constante é um número negativo muito grande que um objeto adiciona ao seu próprio código de erro para indicar que o erro é definido pelo servidor. Por conseguinte, subtraí-lo de Err.Number retira-o do resultado.
Se o erro for definido pelo objeto, o número base é deixado em MyError, que é apresentado numa caixa de mensagem juntamente com a origem original do erro. Se Err.Number representar um erro do Visual Basic, o número de erro do Visual Basic é apresentado na caixa de mensagem.
' Typical use of Number property
Sub test()
On Error GoTo out
Dim x, y
x = 1 / y ' Create division by zero error
Exit Sub
out:
MsgBox Err.Number
MsgBox Err.Description
' Check for division by zero error
If Err.Number = 11 Then
y = y + 1
End If
Resume
End Sub
' Using Number property with an error from an
' Automation object
Dim MyError, Msg
' First, strip off the constant added by the object to indicate one
' of its own errors.
MyError = Err.Number - vbObjectError
' If you subtract the vbObjectError constant, and the number is still
' in the range 0-65,535, it is an object-defined error code.
If MyError > 0 And MyError < 65535 Then
Msg = "The object you accessed assigned this number to the error: " _
& MyError & ". The originator of the error was: " _
& Err.Source & ". Press F1 to see originator's Help topic."
' Otherwise it is a Visual Basic error number.
Else
Msg = "This error (# " & Err.Number & ") is a Visual Basic error" & _
" number. Press Help button or F1 for the Visual Basic Help" _
& " topic for this error."
End If
MsgBox Msg, , "Object Error", Err.HelpFile, Err.HelpContext
Confira também
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.