Funktsioon Nz

Rakenduskoht
Microsoft 365 rakendus Access Access 2024 Access 2021 Access 2019 Access 2016

Funktsiooni Nz abil saate tagastada nulli, nullpikkusega stringi (" ") või muu määratud väärtuse, kui Variant on Null. Näiteks saate kasutada seda funktsiooni Null väärtuse teisendamiseks teiseks väärtuseks ja takistada seda paljunemast avaldise abil.

Süntaks

Nz(variant [, valueifnull ] )

Funktsiooni Nz süntaksil on järgmised argumendid.

Argument Kirjeldus
Variant Nõutav. Andmetüübi Variant muutuja.
valueifnull Valikuline (v.a juhul, kui seda kasutatakse päringus). Variant, mis pakub tagastatavat väärtust, kui argument variant on Null. See argument võimaldab tagastada mõne muu väärtuse peale nulli või nullpikkusega stringi.
Märkus. Kui kasutate funktsiooni Nz päringu avaldises ilma argumenti valueifnull kasutamata, on tulemiks nullpikkusega string väljadel, mis sisaldavad tühiväärtusi.

Kui variandi argumendi väärtus on Null, tagastab funktsioon Nz arvu nulli või nullpikkusega stringi (päringuavaldises tagastab alati nullpikkusega stringi), sõltuvalt sellest, kas kontekst näitab, et väärtus peaks olema arv või string. Kui valikuline argument valueifnull on kaasatud, tagastab funktsioon Nz selle argumendiga määratud väärtuse, kui argument variant on Null. Kui seda kasutatakse päringuavaldises, peaks funktsioon NZ alati sisaldama argumenti valueifnull ,

Kui variandi väärtus pole Null, tagastab funktsioon Nzvariandi väärtuse.

Märkused

Funktsioon Nz on kasulik nende avaldiste jaoks, mis sisaldavad väärtusi Null. Selleks, et sundida avaldist mitte-Null väärtuse tuletamiseks, isegi, kui see sisaldab Null väärtust, kasutage funktsiooni Nz nulli tagastamiseks, nullpikkusega stringi jaoks või kohandatava tagastatava väärtuse jaoks.

Näiteks tagastab avaldis 2 + varX alati väärtuse Null , kui variantvarX on Null. 2 + Nz(varX) Tagastab siiski väärtuse 2.

Funktsiooni Nz saate tihti kasutada alternatiivina funktsioonile IIf. Näiteks on järgmises näites soovitud tulemusi saavutamiseks vajalik, et kaks avaldist kasutaks funktsiooni IIf. Esimest avaldist, mis sisaldab funktsiooni IIf, kasutatakse muutuja väärtuse kontrollimiseks ja selle nulliks teisendamiseks, kui see on Null.

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

Järgmises näites, pakub funktsioon Nz sama funktsionaalsust, mida esimenegi. Tänu sellele saavutatakse soovitud tulemus mitte kahe vaid ühe toiminguga.

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

Kui annate valikulisele argumendile valueifnull väärtuse, siis tagastataks see väärtus, kui variant on Null. Lisades selle valikulise argumendi, võite vältida funktsiooni IIf sisaldava väljendi kasutamist. Näiteks järgmine avaldis kasutab funktsiooni IIf stringi tagastamiseks, kui väärtus varFreight on Null.

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

Järgmises näites annab funktsioonile Nz esitatud valikuline argument stringi, mis tagastatakse, kui varFreight see on Null.

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

Päringu näited

Avaldis Tulemid
SELECT ProductID, NZ(Discount,"No Detail Available") AS Expr2 FROM ProductSales; Tagastab veerus Avaldis1 väärtuse "ProductID", väärtustab välja "Discount" tühiväärtused ja tagastab kõigi tühiväärtuste jaoks väärtuse "Üksikasju pole saadaval" (tagastab tühiväärtused olemasoleval kujul).
SELECT ProductID, NZ(Discount,"No Detail Available") AS ReplaceNull FROM ProductSales; Tagastab veerus Toode väärtuse "ProductID", väärtustab välja "Discount" tühiväärtused ja tagastab kõigi tühiväärtuste jaoks väärtuse "Üksikasjad pole saadaval" (tagastab olemasolevad mittenullväärtused) ja kuvab veerus ReplaceNull.

VBA näide

Märkus.

Järgmised näited kujutavad selle funktsiooni kasutamist rakenduse Visual Basic for Applications (VBA) moodulis. Lisateabe saamiseks VBA-ga töötamise kohta valige välja Otsing kõrval kuvatavast ripploendist väärtus Tootearendusmaterjal ja sisestage otsinguväljale üks või mitu sõna.

Järgnevas näites hinnatakse vormi juhtelementi ja arvutatakse üks kahest stringi väärtusest, mis põhineb juhtelemendi väärtusel. Kui juhtelemendi väärtus on Null, siis kasutab protseduur funktsiooni Nz, et teisendada Null väärtus nullpikkusega stringiks.

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