Zwraca wartość typu wariant błędu podtypu zawierającego numer błędu określonego przez użytkownika.

Składnia

CVErr ( numer błędu )

Wymagany numer błęduargument to dowolny prawidłowy numer błędu.

Uwagi

Użyj funkcji CVErr , aby utworzyć błędy zdefiniowane przez użytkownika w procedurach utworzonych przez użytkownika. Jeśli na przykład utworzysz funkcję akceptującą kilka argumentów i normalnie zwracającą ciąg, funkcja może oszacować argumenty wejściowe, aby upewnić się, że znajdują się one w dopuszczalnym zakresie. Jeśli tak nie jest, prawdopodobnie funkcja nie zwróci tego, czego oczekujesz. W takim przypadku funkcja CVErr umożliwia zwrócenie numeru błędu informującego o czynnościach do wykonania.

Zwróć uwagę, że niejawna konwersja błędu jest niedozwolona. Na przykład nie można bezpośrednio przypisać zwracanej wartości funkcji CVErr do zmienna, który nie jest wartością typu wariant. Można jednak przeprowadzić jawną konwersję (przy użyciu CInt, CDbl itd.) wartości zwróconej przez funkcję CVErr i przypisać ją do zmiennej odpowiedniej typ danych.

Przykład

Uwaga: Poniższe przykłady przedstawiają sposób użycia tej funkcji w module języka Visual Basic for Applications (VBA). Aby uzyskać dodatkowe informacje na temat pracy w języku VBA, wybierz pozycję Dokumentacja dewelopera z listy rozwijanej obok przycisku Wyszukaj i wprowadź odpowiednie terminy w polu wyszukiwania.

W tym przykładzie użyto funkcji CVErr w celu zwrócenia typu wariant , którego Zmienna to vbError (10). Funkcja zdefiniowana przez użytkownika CalculateDouble zwraca błąd, jeśli przekazany do niej argument nie jest liczbą. Za pomocą funkcji CVErr można zwrócić błędy zdefiniowane przez użytkownika z procedur zdefiniowanych przez użytkownika lub odroczyć obsługę błędu w czasie wykonywania. Użyj funkcji Czy.Błąd , aby sprawdzić, czy wartość reprezentuje błąd.

' 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

Potrzebujesz dalszej pomocy?

Chcesz uzyskać więcej opcji?

Poznaj korzyści z subskrypcji, przeglądaj kursy szkoleniowe, dowiedz się, jak zabezpieczyć urządzenie i nie tylko.

Społeczności pomagają zadawać i odpowiadać na pytania, przekazywać opinie i słuchać ekspertów z bogatą wiedzą.