IsMissing-Funktion

Gibt einen Wert vom Typ Boolean zurück, der angibt, ob ein optionales ArgumentVariant an eine Prozedur übergeben wurde.

Syntax

IsMissing(argname)

Das erforderliche Argument argname enthält den Namen eines optionalen Prozedurarguments vom Typ Variant.

Hinweise

Verwenden Sie die IsMissing-Funktion, um zu ermitteln, ob optionale Argumente vom Typ Variant beim Aufrufen einer Prozedur angegeben wurden. IsMissing gibt Wahr zurück, wenn für das angegebene Argument kein Wert übergeben wurde. Andernfalls wird Falsch zurückgegeben. Wenn IsMissing den Wert Wahr für ein Argument ausgibt, kann die Verwendung des fehlenden Arguments in anderem Code zu einem benutzerdefinierten Fehler führen. Wenn IsMissing für ein Argument ParamArray verwendet wird, wird immer Falsch zurückgegeben. Um einen leeren ParamArray zu ermitteln, müssen Sie testen, ob die Obergrenze des Matrix niedriger ist als die Untergrenze.

Hinweis : IsMissing funktioniert mit einfachen Datentypen (wie Integer oder Double) nicht, da sie im Gegensatz zu Variant nicht über die Möglichkeit eines "fehlenden" Flagbits verfügen. Deshalb können Sie im Falle der Syntax für typisierte optionale Argumente einen Standardwert angeben. Wenn das Argument beim Prozeduraufruf nicht angegeben wird, wird das Argument diesen Standardwert aufweisen, wie im folgenden Beispiel dargestellt:

Hinweis : Die folgenden Beispiele zeigen die Verwendung dieser Funktion in einem VBA-Modul (Visual Basic für Applikationen). Wenn Sie weitere Informationen zum Arbeiten mit VBA wünschen, wählen Sie Entwicklerhilfe in der Dropdownliste neben Suchen, und geben Sie einen oder mehrere Begriffe in das Suchfeld ein.

Sub MySub(Optional MyVar As String = "specialvalue")
If MyVar = "specialvalue" Then
' MyVar was omitted.
Else
...
End Sub

In vielen Fällen können Sie den If MyVar-Test ganz weglassen, indem Sie den Standardwert auf den Wert festlegen, den MyVar enthalten soll, wenn der Benutzer ihn im Funktionsaufruf nicht angibt. So ist der Code kürzer und effizienter.

Beispiel

In diesem Beispiel wird die IsMissing-Funktion verwendet, um zu prüfen, ob ein optionales Argument an eine benutzerdefinierte Prozedur übergeben wurde. Beachten Sie, dass optionale Argumente jetzt Standardwerte und andere Typen als Variant-Variablen aufweisen dürfen.

Dim ReturnValue
' The following statements call the user-defined
' function procedure.
ReturnValue = ReturnTwice() ' Returns Null.
ReturnValue = ReturnTwice(2) ' Returns 4.
' Function procedure definition.
Function ReturnTwice(Optional A)
If IsMissing(A) Then
' If argument is missing, return a Null.
ReturnTwice = Null
Else
' If argument is present, return twice the value.
ReturnTwice = A * 2
End If
End Function
Teilen Facebook Facebook Twitter Twitter E-Mail E-Mail

War diese Information hilfreich?

Sehr gut. Noch anderes Feedback?

Was können wir verbessern?

Vielen Dank für Ihr Feedback!

×