Returnerar ett variantfel av undertyp som innehåller felnummer som anges av användaren.
Syntax
CVErr ( felnummer )
Den argument är ett giltigt felnummer.
Kommentarer
Använd funktionen CVErr för att skapa användardefinierade fel i användardefinierade procedurer. Om du till exempel skapar en funktion som accepterar flera argument och normalt returnerar en sträng, kan du få funktionen att utvärdera indataargumenten för att säkerställa att de är inom godtagbara intervall. Om de inte är det returnerar troligen din funktion inte det du förväntar dig. I detta fall kan du med CVErr returnera ett felnummer som anger vilken åtgärd som ska vidtas.
Observera att implicit konvertering av ett fel inte är tillåtet. Du kan till exempel inte direkt tilldela returvärdet för CVErr till en variabel värde som inte är en variant. Du kan emellertid utföra en explicit konvertering (med CInt,CDbloch så vidare) av värdet som returneras av CVErr och tilldela det till en variabel av lämplig datatyp.
Exempel
Obs!: I exemplen nedan visar vi hur du använder den här funktionen i en Visual Basic for Applications-modul (VBA). Om du vill läsa mer om hur man använder VBA, kan du välja Info för utvecklare i listrutan bredvid Sök och sedan skriva en eller flera söktermer i sökrutan.
I det här exemplet används funktionen CVErr för att returnera en variantvars VarType ärvbError (10). Den användardefinierade funktionen CalculateDouble ett fel om argumentet som överförs till det inte är ett tal. Du kan använda CVErr för att returnera användardefinierade fel från användardefinierade procedurer eller för att skjuta upp hanteringen av ett körningsfel. Använd funktionen ÄrFel för att testa om värdet representerar ett fel.
' 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