Funkcija „Nz“

Primenjuje se na
Access za Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Funkciju Nz možete da koristite da biste vratili nulu, nisku nulte dužine (" ") ili drugu navedenu vrednost kada varijanta ima vrednost Null. Na primer, ovu funkciju možete upotrebiti da pretvorite vrednost Null u drugu vrednost i sprečite njeno prenošenje kroz izraz.

Sintaksa

Nz(varijanta [, vrednostifnull ] )

Sintaksa funkcije Nz ima sledeće argumente:

Argument Opis
variant Obavezno. Promenljiva tipa podataka Varijanta.
valueifnull Opcionalno (osim ako se koristi u upitu). Varijanta koja obezbeđuje vrednost koja će biti vraćena ako argument variant ima vrednost Null. Ovaj argument vam omogućava da dobijete vrednost koja nije nula ili niska nulte dužine.
Beleške: Ako koristite funkciju Nz u izrazu u upitu bez korišćenja argumenta valueifnull , rezultati će biti niska nulte dužine u poljima koja sadrže prazne vrednosti.

Ako je vrednost argumenta variantNull, funkcija Nz daje broj nula ili nisku nulte dužine (uvek daje nisku nulte dužine kada se koristi u izrazu upita), u zavisnosti od toga da li kontekst ukazuje na to da vrednost treba da bude broj ili niska. Ako je uključen opcionalni argument valueifnull , funkcija Nz vraća vrednost koju navodi taj argument ako argument variant ima vrednost Null. Kada se koristi u izrazu upita, funkcija NZ uvek treba da sadrži argument valueifnull ,

Ako vrednost variant nijeNull, funkcija Nz vraća vrednost variant.

Napomene

Funkcija Nz je korisna za izraze koji možda obuhvataju Null vrednosti. Da biste nametnuli da izraz kao rezultat daje vrednost koja nije Null čak i kad sadrži vrednost Null, upotrebite funkciju Nz kako biste dobili nulu, nisku nulte dužine ili prilagođenu povratnu vrednost.

Na primer, izraz uvek 2 + varX vraća vrednost Null kada varijantavarX ima vrednost Null. Međutim, 2 + Nz(varX) daje 2.

Funkciju Nz često možete koristiti kao alternativu funkciji IIf. Na primer, u sledećem kodu dva izraza koja uključuju funkciju IIf neophodna su da bi se dobio željeni rezultat. Prvi izraz koji uključuje funkciju IIf se koristi za proveru vrednosti promenljive i njeno pretvaranje u nulu ako ona ima vrednost Null.

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

U sledećem primeru, funkcija Nz pruža istu funkcionalnost kao i prvi izraz, a željeni rezultat se postiže u jednom koraku umesto u dva.

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

Ako navedete vrednost za opcionalni argument valueifnull, ta vrednost se vraća kad argument variant ima vrednost Null. Uključivanjem ovog opcionalnog argumenta možda možete izbeći upotrebu izraza koji sadrži funkciju IIf. Na primer, sledeći izraz koristi funkciju IIf kako bi vratio nisku ako je vrednost varFreightNull.

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

U sledećem primeru, opcionalni argument pružen funkciji Nz obezbeđuje nisku koja će biti vraćena ako varFreight ima vrednost Null.

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

Primeri upita

Izraz Rezultati
SELECT ProductID, NZ(Discount,"No Detail Available") AS Expr2 FROM ProductSales; Daje "ID proizvoda" u koloni Izraz1, procenjuje vrednosti "Null" u polju "Popust" i vraća "Nema dostupnih detalja" za sve prazne vrednosti (daje vrednosti koje nisu bez vrednosti kao što su).
SELECT ProductID, NZ(Discount,"No Detail Available") AS ReplaceNull FROM ProductSales; Daje "ID proizvoda" u koloni "Proizvod", procenjuje vrednosti "Null" u polju "Popust" i vraća "Nema dostupnih detalja" za sve prazne vrednosti (daje vrednosti koje nisu bez vrednosti) i prikazuje se u koloni ReplaceNull.

VBA primer

Napomena

Primeri koji slede pokazuju upotrebu ove funkcije u Visual Basic for Applications (VBA) modulu. Ako vam je potrebno više informacija o radu sa VBA modulom, izaberite stavku Referenca razvojnog programera sa padajuće liste pored stavke Pretraga i unesite jedan ili više termina u polje za pretragu.

Sledeći primer procenjuje kontrolu u obrascu i na osnovu njene vrednosti vraća jednu od dve niske. Ako je vrednost kontrole Null, procedura koristi funkciju Nz za pretvaranje vrednosti Null u nisku nulte dužine.

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