Wednesday, September 21, 2022

Nz-Funktion

Sie können die Nz -Funktion verwenden, um Null, eine Zeichenfolge der Länge Null (" ") oder einen anderen angegebenen Wert zurückzugeben, wenn eine Variante Null ist. Sie können diese Funktion beispielsweise verwenden, um einen Nullwert in einen anderen Wert umzuwandeln und zu verhindern, dass er durch einen Ausdruck weitergegeben wird.

Syntax

Nz ( Variante [ , valueifnull ] )

Die Syntax der Nz- Funktion hat die folgenden Argumente:

Streit

Beschreibung

Variante

Erforderlich. Eine Variable vom Datentyp Variant .

valueifnull

Optional (sofern nicht in einer Abfrage verwendet). Ein Variant , der einen Wert bereitstellt, der zurückgegeben werden soll, wenn das Variant -Argument Null ist. Mit diesem Argument können Sie einen anderen Wert als Null oder eine Zeichenfolge der Länge Null zurückgeben.

Hinweis: Wenn Sie die Nz -Funktion in einem Ausdruck in einer Abfrage verwenden, ohne das valueifnull- Argument zu verwenden, sind die Ergebnisse eine leere Zeichenfolge in den Feldern, die Nullwerte enthalten.

Wenn der Wert des Variant -Arguments Null ist, gibt die Nz -Funktion die Zahl Null oder eine Zeichenfolge der Länge Null zurück (gibt immer eine Zeichenfolge der Länge Null zurück, wenn sie in einem Abfrageausdruck verwendet wird), je nachdem, ob der Kontext angibt, dass der Wert a sein sollte Zahl oder eine Zeichenfolge. Wenn das optionale valueifnull- Argument enthalten ist, gibt die Nz -Funktion den durch dieses Argument angegebenen Wert zurück, wenn das Variant -Argument Null ist. Bei Verwendung in einem Abfrageausdruck sollte die NZ -Funktion immer das valueifnull- Argument enthalten,

Wenn der Wert von variation nicht Null ist, gibt die Nz- Funktion den Wert von variation zurück.

Bemerkungen

Die Nz- Funktion ist nützlich für Ausdrücke, die Nullwerte enthalten können. Um zu erzwingen, dass ein Ausdruck zu einem Nicht- Null -Wert ausgewertet wird, selbst wenn er einen Null -Wert enthält, verwenden Sie die Nz -Funktion, um Null, eine leere Zeichenfolge oder einen benutzerdefinierten Rückgabewert zurückzugeben.

Beispielsweise gibt der Ausdruck 2 + varX immer einen Nullwert zurück, wenn Variant varX Null ist. 2 + Nz(varX) gibt jedoch 2 zurück.

Sie können die Nz -Funktion häufig als Alternative zur IIf -Funktion verwenden. Im folgenden Code sind beispielsweise zwei Ausdrücke einschließlich der IIf -Funktion erforderlich, um das gewünschte Ergebnis zurückzugeben. Der erste Ausdruck, der die Funktion IIf enthält , wird verwendet, um den Wert einer Variablen zu überprüfen und ihn in Null umzuwandeln, wenn er Null ist.

 varTemp = IIf(IsNull(varFreight), 0, varFreight)
varResult = IIf(varTemp > 50, "High", "Low")

Im nächsten Beispiel bietet die Nz- Funktion dieselbe Funktionalität wie der erste Ausdruck, und das gewünschte Ergebnis wird in einem statt in zwei Schritten erzielt.

varResult = IIf(Nz(varFreight) > 50, "Hoch", "Niedrig")

Wenn Sie einen Wert für das optionale Argument valueifnull angeben , wird dieser Wert zurückgegeben, wenn Variant Null ist. Indem Sie dieses optionale Argument einschließen, können Sie möglicherweise die Verwendung eines Ausdrucks vermeiden, der die IIf -Funktion enthält. Der folgende Ausdruck verwendet beispielsweise die IIf -Funktion, um eine Zeichenfolge zurückzugeben, wenn der Wert von varFreight Null ist.

 varResult = IIf(IsNull(varFreight), _
"No Freight Charge", varFreight)

Im nächsten Beispiel liefert das optionale Argument, das der Nz -Funktion bereitgestellt wird, die Zeichenfolge, die zurückgegeben werden soll, wenn varFreight Null ist.

varResult = Nz(varFreight, "Keine Frachtkosten")

Abfragebeispiele

Ausdruck

Ergebnisse

SELECT ProductID, NZ(Discount,"No Detail available") AS Expr2 FROM ProductSales;

Gibt „ProductID" in Spalte Expr1 zurück, wertet die „Null"-Werte im Feld „Discount" aus und gibt „No Details Available" für alle Null-Werte zurück (gibt die Nicht-Null-Werte unverändert zurück).

SELECT ProductID, NZ(Discount,"No Detail available") AS ReplaceNull FROM ProductSales;

Gibt „ProductID" in der Spalte „Product" zurück, wertet die „Null"-Werte im Feld „Discount" aus und gibt „Keine Details verfügbar" für alle Nullwerte zurück (gibt die Nicht-Null-Werte unverändert zurück) und wird in der Spalte „ReplaceNull" angezeigt.

VBA-Beispiel

Hinweis: Die folgenden Beispiele veranschaulichen die Verwendung dieser Funktion in einem Visual Basic for Applications (VBA)-Modul. Um weitere Informationen zum Arbeiten mit VBA zu erhalten, wählen Sie Entwicklerreferenz in der Dropdown-Liste neben Suchen aus und geben Sie einen oder mehrere Begriffe in das Suchfeld ein.

Das folgende Beispiel wertet ein Steuerelement in einem Formular aus und gibt basierend auf dem Wert des Steuerelements eine von zwei Zeichenfolgen zurück. Wenn der Wert des Steuerelements Null ist, verwendet die Prozedur die Nz -Funktion, um einen Nullwert in eine leere Zeichenfolge zu konvertieren.

 Public Sub CheckValue()
Dim frm As Form
Dim ctl As Control
Dim varResult As Variant
' Return Form object variable
' pointing to Orders form.
Set frm = Forms!Orders
' Return Control object variable
' pointing to ShipRegion.
Set ctl = frm!ShipRegion
' Choose result based on value of control.
varResult = IIf(Nz(ctl.Value) = vbNullString, _
"No value.", "Value is " & ctl.Value & ".")
' Display result.
MsgBox varResult, vbExclamation
End Sub

No comments:

Post a Comment