Returnerer en variant af undertypefejl , der indeholder en fejlnummer , der er angivet af brugeren.

Syntaks

CVErr ( fejlnummer )

Det påkrævede fejlnummerargument er et gyldigt fejlnummer.

Bemærkninger

Brug funktionen CVErr til at oprette brugerdefinerede fejl i brugeroprettede procedurer. Hvis du f.eks. opretter en funktion, der accepterer flere argumenter og normalt returnerer en streng, kan du få din funktion til at evaluere inputargumenterne for at sikre, at de er inden for et acceptabelt område. Hvis de ikke er det, er det sandsynligt, at din funktion ikke returnerer det, du forventer. I dette tilfælde giver CVErr dig mulighed for at returnere et fejlnummer, der fortæller dig, hvad du skal gøre.

Bemærk, at implicit konvertering af en fejl ikke er tilladt. Du kan f.eks. ikke tildele cverr-returværdien direkte til en variabel , der ikke er en variant. Du kan dog udføre en eksplicit konvertering (ved hjælp af CInt, CDbl osv.) af den værdi, der returneres af CVErr , og tildele den til en variabel af den relevante datatype.

Eksempel

Bemærk!: Følgende eksempler demonstrerer brugen af denne funktion i et VBA-modul (Visual Basic for Applications). Hvis du vil have mere at vide om at arbejde med VBA, skal du vælge Udviklerreference på rullelisten ud for Søg og skrive ét eller flere ord i søgefeltet.

I dette eksempel bruges funktionen CVErr til at returnere en Variant , hvis VarType er vbError (10). Den brugerdefinerede funktion CalculateDouble returnerer en fejl, hvis det argument, der overføres til den, ikke er et tal. Du kan bruge CVErr til at returnere brugerdefinerede fejl fra brugerdefinerede procedurer eller til at udskyde håndteringen af en kørselsfejl. Brug funktionen IsError til at teste, om værdien repræsenterer en fejl.

' 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

Har du brug for mere hjælp?

Vil du have flere indstillinger?

Udforsk abonnementsfordele, gennemse kurser, få mere at vide om, hvordan du sikrer din enhed og meget mere.

Communities hjælper dig med at stille og besvare spørgsmål, give feedback og høre fra eksperter med omfattende viden.