VBA-Programmierung in Microsoft Excel

Tutorial: Excel-Beispiele

VBA-Begriff: IsMissing-Funktion

Gibt einen Wert vom Typ Boolean zurück, der angibt, ob einer Prozedur ein optionales Argument vom Typ Variant übergeben wurde.

Syntax

IsMissing(ArgName)

Das erforderliche Argument ArgName enthält den Namen eines optionalen Variant-Arguments einer Prozedur.

Bemerkungen

Verwenden Sie die IsMissing-Funktion, um festzustellen, ob beim Aufrufen einer Prozedur optionale Argumente übergeben wurden. IsMissing gibt den Wert True zurück, wenn für das jeweilige Argument kein Wert angegeben wurde, andernfalls wird False zurückgegeben. Wenn IsMissing den Wert True für ein Argument zurückgibt, kann die Verwendung des fehlenden Arguments im Prozedurcode einen benutzerdefinierten Fehler auslösen. Wenn IsMissing für ein ParamArray-Argument verwendet wird, wird immer False zurückgegeben. Sie können feststellen, ob ein ParamArray-Argument leer ist, indem Sie überprüfen, ob die oberere Grenze des Datenfelds kleiner als die untere Grenze ist.

Anmerkung   IsMissing funktioniert nicht mit einfachen Datentypen (wie Integer oder Double), da diese im Gegensatz zum Datentyp Variant auf ein fehlendes Attribut-Bit nicht vorbereitet sind. Daher erlaubt Ihnen die Syntax für eingegebene optionale Argumente die Angabe eines Standardwertes. Wird das Argument beim Aufrufen der Prozedur weggelassen, erhält es den Standardwert, wie im folgenden Beispiel:

Sub MySub(Optional MyVar As String = "BesondererWert")
    If MyVar = "BesondererWert" Then
        ' MyVar wurde weggelassen.
    Else
    ...
End Sub

In vielen Fällen können Sie den If MyVar-Test auslassen, indem Sie den Standardwert so definierne, daß er gleich dem Wert ist, den MyVar enthalten soll, wenn der Benutzer es im Funktionsaufruf nicht angibt. Dadurch wird Ihr Code kürzer und effizienter.