Funkce CVErr

Platí pro
Access pro Microsoft 365 Access 2021 Access 2019 Access 2016

Vrátí hodnotu typu Variant podtypu Error obsahující číslo chyby zadané uživatelem.

Syntaxe

CVErr(číslochyby

Povinný argument číslo_chybyje libovolné platné číslo chyby.

Poznámky

Funkci CVErr použijte k vytvoření uživatelem definovaných chyb v procedurách vytvořených uživatelem. Pokud například vytvoříte funkci, která přijímá několik argumentů a normálně vrací řetězec, můžete nechat funkci vyhodnotit vstupní argumenty a zajistit, aby byly v přijatelném rozsahu. Pokud tomu tak není, je pravděpodobné, že vaše funkce nevrátí to, co očekáváte. V takovém případě vám CVErr umožní vrátit číslo chyby, které vám řekne, jaká akce se má provést.

Všimněte si, že implicitní převod chyby není povolen. Například nemůžete přímo přiřadit návratovou hodnotu CVErr proměnné, která není Variant. Můžete však provést explicitní převod (pomocí funkcí CInt, CDbl atd.) hodnoty vrácené funkcí CVErr a přiřadit ji proměnné příslušného datového typu.

Příklad

Poznámka

Následující příklady ukazují použití této funkce v modulu VBA (Visual Basic pro Applications). Pokud chcete další informace o práci s modulem VBA, vyberte Referenční informace pro vývojáře, které najdete v rozevíracím seznamu vedle položky Hledat a do vyhledávacího pole napište požadované pojmy.

V tomto příkladu funkce CVErr vrací variantu , jejíž hodnota VarType je vbError (10). Funkce definovaná CalculateDouble uživatelem vrátí chybu, pokud argument předaný jí není číslo. CVErr můžete použít k vrácení uživatelem definovaných chyb z uživatelsky definovaných procedur nebo k odložení zpracování chyby za běhu. Pomocí funkce IsError můžete otestovat, jestli hodnota představuje chybu.

' 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