Devolve uma Variante do subtipo Erro que contém um número de erro especificado pelo utilizador.
Sintaxe
CVErr(númeroerro)
O argumento número de erronecessário é qualquer número de erro válido.
Observações
Use a função CVErr para criar erros definidos pelo usuário em procedimentos criados pelo usuário. Por exemplo, se criar uma função que aceita vários argumentos e normalmente devolve uma cadeia, pode fazer com que a sua função avalie os argumentos de entrada para garantir que estão dentro de um intervalo aceitável. Se não forem, é provável que a sua função não devolva o que esperava. Neste caso, o CVErr permite-lhe devolver um número de erro que indica que ação tomar.
Tenha em atenção que a conversão implícita de um Erro não é permitida. Por exemplo, não é possível atribuir diretamente o valor de retorno de CVErr a uma variável que não seja uma Variante. No entanto, você pode executar uma conversão explícita (usando CInt, CDbl e assim por diante) do valor retornado pelo CVErr e atribuí-la a uma variável do tipo de dados apropriado.
Exemplo
Nota
Os exemplos seguintes demonstram a utilização desta função no módulo VBA (Visual Basic for Applications). Para obter mais informações sobre como trabalhar com o VBA, selecione Referência para Programadores na lista pendente junto a Procurar e introduza um ou mais termos na caixa de pesquisa.
Este exemplo usa a função CVErr para retornar uma Variant cujo VarType é vbError (10). A função CalculateDouble definida pelo utilizador devolve um erro se o argumento que lhe foi transmitido não for um número. Você pode usar CVErr para retornar erros definidos pelo usuário de procedimentos definidos pelo usuário ou para adiar o processamento de um erro em tempo de execução. Utilize a função É.Erro para testar se o valor representa um erro.
' Call CalculateDouble with an error-producing argument.
Sub Test()
Debug.Print CalculateDouble("345.45robert")
End Sub
' Define CalculateDouble Function procedure.
Function CalculateDouble(Number)
If IsNumeric(Number) Then
CalculateDouble = Number * 2 ' Return result.
Else
CalculateDouble = CVErr(2001) ' Return a user-defined error
End If ' number.
End Function