Vraća varijantu greške podtipa koja sadrži broj greške koju je naveo korisnik.
Sintaksa
CVErr (broj greške )
Zahtevani broj greškeargument bilo koji važeći broj greške.
Napomene
Koristite funkciju CVErr da biste kreirali korisnički definisane greške u korisnički kreiranim procedurama. Na primer, ako kreirate funkciju koja prihvata nekoliko argumenata i obično vraća nisku, možete da podesite funkciju da procenjuje ulazne argumente da biste se uverili da su u prihvatljivom opsegu. Ako nisu, vaša funkcija verovatno neće vratiti ono što očekujete. U ovom događaju , CVErr vam omogućava da vratite broj greške koji vam govori koju radnju treba da preduzmete.
Imajte na umu da implicitna konverzija greške nije dozvoljena. Na primer, ne možete direktno da dodelite povratnu vrednost funkcije CVErrpromenljiva koja nije varijanta. Međutim, možete da izvršite eksplicitnu konverziju ( koristeći CInt, CDbl i tako dalje) vrednosti koju je vratio CVErr i dodelite je promenljivoj odgovarajuće tip podatka.
Primer
Napomena: Primeri koji slede pokazuju upotrebu ove funkcije u Visual Basic for Applications (VBA) modulu. Za više informacija o radu sa VBA modulom izaberite stavku Referenca razvojnog programera sa padajuće liste pored stavke Pretraga i unesite termine u polje za pretragu.
Ovaj primer koristi funkciju CVErr da bi vratio varijantu čiji je VarTypevbError (10). Korisnički definisana funkcija CalculateDouble vraća grešku ako argument prosleđen nije broj. Možete da koristite CVErr da biste vratili korisnički definisane greške iz korisnički definisanih procedura ili da biste odložili rukovanje greškom u izvršavanju. Koristite funkciju IsError da biste testirali da li vrednost predstavlja grešku.
' 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