Nz, functie

Van toepassing op
Access voor Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

U kunt de functie Nz gebruiken om nul, een tekenreeks met lengte nul (" ") of een andere opgegeven waarde te retourneren wanneer een Variant Null is. U kunt deze functie bijvoorbeeld gebruiken om een Null-waarde te converteren naar een andere waarde en te voorkomen dat de waarde wordt doorgegeven via een expressie.

Syntaxis

Nz(variant [, waardealsnull ] )

De syntaxis van de functie Nz bevat de volgende argumenten:

Argument Beschrijving
variant Vereist. Een variabele van het gegevenstype Variant.
waardealsnull Optioneel (tenzij gebruikt in een query). Een variant die een waarde opgeeft die moet worden geretourneerd als het variantargumentNull is. Met behulp van dit argument kunt u een andere waarde dan nul of een tekenreeks met lengte nul als resultaat geven.
Opmerking: Als u de functie Nz gebruikt in een expressie in een query zonder het argument waardealsnull te gebruiken, zijn de resultaten een tekenreeks met lengte nul in de velden die Null-waarden bevatten.

Als de waarde van het variantargumentNull is, retourneert de functie Nz het getal nul of een tekenreeks met lengte nul (retourneert altijd een tekenreeks met lengte nul wanneer deze wordt gebruikt in een query-expressie), afhankelijk van of de context aangeeft dat de waarde een getal of een tekenreeks moet zijn. Als u het optionele argument valueifnull opneemt, retourneert de functie Nz de waarde die door het argument is opgegeven als het argument VariantNull is. Wanneer NZ in een query-expressie wordt gebruikt, moet deze altijd het argument valueifnull bevatten.

Als de waarde van de variant niet Null is, retourneert de functie Nz de waarde van de variant.

Opmerkingen

De functie Nz is handig voor expressies die Null-waarden kunnen bevatten. Als het resultaat van een expressie niet Null moet zijn, zelfs niet wanneer deze een Null-waarde bevat, gebruikt u de functie Nz om nul, een tekenreeks met lengte nul of een aangepaste retourwaarde te retourneren.

De expressie 2 + varX geeft bijvoorbeeld altijd een Null-waarde als resultaat wanneer de variantvarXNull is. Retourneert 2 + Nz(varX) echter 2.

De functie Nz kan vaak worden gebruikt als een alternatief voor de functie IIf. In de volgende code zijn bijvoorbeeld twee expressies met de functie IIf nodig om het gewenste resultaat te krijgen. De eerste expressie met de functie IIf is nodig om de waarde van een variabele te controleren en deze te converteren naar nul als de variabele Null is.

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

In het volgende voorbeeld biedt de functie Nz dezelfde functionaliteit als de eerste expressie en wordt het gewenste resultaat met één stap bereikt in plaats van twee.

varResult = IIf(Nz(varFreight) > 50, "High", "Low")

Als u een waarde opgeeft voor het optionele argument waardealsnull, wordt die waarde geretourneerd wanneer variantNull is. Met behulp van dit optionele argument is het misschien niet nodig om een expressie te gebruiken met daarin de functie IIf. De volgende expressie gebruikt bijvoorbeeld de functie IIf om een tekenreeks te retourneren als de waarde van varFreightNull is.

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

In het volgende voorbeeld levert het optionele argument dat aan de functie Nz is opgegeven de tekenreeks op die moet worden geretourneerd als varFreight deze Null is.

varResult = Nz(varFreight, "No Freight Charge")

Queryvoorbeelden

Expression Resultaten
SELECT ProductID, NZ(Korting,"Geen details beschikbaar") AS Expr2 FROM ProductSales; Retourneert 'Product-id' in kolom Expr1, evalueert de 'null'-waarden in het veld 'korting' en retourneert 'geen details beschikbaar' voor alle null-waarden (retourneert de niet-null-waarden als zodanig).
SELECT ProductID, NZ(Korting,"Geen details beschikbaar") AS ReplaceNull FROM ProductSales; Retourneert 'ProductID' in kolom Product, evalueert de 'Null'-waarden in het veld 'Korting' en retourneert 'Geen details beschikbaar' voor alle Null-waarden (retourneert de niet-null-waarden als zodanig) en wordt weergegeven in de kolom ReplaceNull.

VBA-voorbeeld

Opmerking

In de volgende voorbeelden wordt het gebruik van deze functie in een VBA-module (Visual Basic for Applications) toegelicht. Meer informatie over het werken met VBA vindt u door in de vervolgkeuzelijst naast Zoeken de optie Referentie voor ontwikkelaars te selecteren en een of meer termen in het zoekvenster te typen.

In het volgende voorbeeld wordt een besturingselement op een formulier geëvalueerd en bestaat het resultaat uit één van twee mogelijke tekenreeksen, afhankelijk van de waarde van het besturingselement. Als de waarde van het besturingselement Null is, wordt de functie Nz gebruikt om een Null-waarde te converteren naar een tekenreeks met lengte nul.

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