Applies To„Access“, skirta „Microsoft 365“ „Access 2024“ Access 2021 Access 2019 Access 2016

Funkciją Nz naudokite norėdami grąžinti nulį, nulinio ilgio eilutė (" ") arba kitą nurodytą reikšmę, kai Variantas yra neapibrėžta reikšmė (Null). Pavyzdžiui, galite naudoti šią funkciją norėdami konvertuoti Neapibrėžtą reikšmę (Null) į kitą reikšmę ir neleisti jai sklisti reiškinyje.

Sintaksė

Nz ( variantas [, reikšmė_jei_neapibrėžta ] )

Funkcijos Nz sintaksės argumentai:

Argumentas

Aprašas

variantas

Būtinas. Variantoduomenų tipas kintamasis.

reikšmė_jei_neapibrėžta

Pasirinktinis (nebent naudojamas užklausoje). Variantas, kuris suteikia grąžinamą reikšmę, jeigu argumente variantas yra Neapibrėžta reikšmė (Null). Naudodami šį argumentą galite grąžinti kitą reikšmę nei nulis arba nulinio ilgio eilutė.

Pastaba: Jeigu funkciją Nz naudojate užklausos išraiškoje, nenaudodami argumento reikšmė_jei_neapibrėžta laukuose, kuriuose yra neapibrėžtos reikšmės, gausite nulinio ilgio eilutes.

Jei argumento variantas reikšmė yra Neapibrėžta (Null), funkcija Nz grąžina nulį arba nulinio ilgio eilutę (kai naudojama užklausos reiškinyje, visada grąžina nulinio ilgio eilutę), atsižvelgdama į tai, kokią reikšmę (skaičių ar eilutę) nurodo kontekstas. Jei nurodytas pasirinktinis argumentas reikšmė_jei_neapibrėžta, tuomet funkcija Nz grąžina reikšmę, kurią nurodo šis argumentas, jei argumento variantas reikšmė yra Neapibrėžta (Null). Kai naudojama užklausos reiškinyje, funkcijoje NZ visada turi būti nurodytas argumentas reikšmė_jei_neapibrėžta.

Jei argumento variantas reikšmė nėra Neapibrėžta (Null), funkcija Nz grąžina argumento variantas reikšmę.

Pastabos

Funkcija Nz naudinga reiškiniuose, kuriuose gali būti Neapibrėžtos reikšmės (Null). Kad reiškinys būtų įvertintas ne kaip Neapibrėžta reikšmė (Null) net kai jame yra Neapibrėžta reikšmė (Null), naudokite funkciją Nz, kad ji grąžintų nulį, nulinio ilgio eilutę arba pasirinktinę grąžinamą reikšmę.

Pavyzdžiui, reiškinys 2 + varX visada pateiks reikšmę Neapibrėžta reikšmė (Null), kai Varianto varX reikšmė yra Neapibrėžta reikšmė (Null). Tačiau 2 + Nz(varX) grąžina reikšmę 2.

Dažnai funkciją Nz galima naudoti kaip funkcijos IIf alternatyvą. Pavyzdžiui, nurodytame kode būtini du reiškiniai, įskaitant funkciją IIf, kad būtų grąžintas pageidaujamas rezultatas. Pirmasis reiškinys, kuriame yra funkcija IIf, naudojamas patikrinti kintamojo reikšmę ir, jei jo reikšmė yra Neapibrėžta (Null), konvertuoti į nulį.

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

Kitame pavyzdyje funkcija Nz suteikia tas pačias funkcines galimybes kaip ir pirmasis reiškinys, o pageidaujamas rezultatas gaunamas atliekant vieną veiksmą, o ne du.

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

Jei nurodysite pasirinktinio argumento reikšmė_jei_neapibrėžta reikšmę, ta reikšmė bus grąžinta, kai argumento variantas reikšmė yra Neapibrėžta (Null). Nurodydami šį pasirinktinį argumentą, galėsite nenaudoti reiškinio, kuriame būtų funkcija IIf. Pavyzdžiui, nurodytame reiškinyje naudojama funkcija IIf, grąžinanti eilutę, jei varFreight reikšmė yra Neapibrėžta (Null).

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

Kitame pavyzdyje funkcijoje Nz nurodytas pasirinktinis argumentas pateikia grąžintiną eilutę, jei varFreight yra Neapibrėžta (Null).

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

Užklausų pavyzdžiai

Reiškinys

Rezultatai

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

Stulpelyje Reiškinys1 pateikia "ProductID", įvertina "Null" reikšmes lauke "Nuolaida" ir pateikia visų neapibrėžtų reikšmių reikšmę "Nėra išsamios informacijos" (pateikia ne nulines reikšmes, kaip yra).

SELECT ProductID, NZ(Nuolaida,"Nėra išsamios informacijos") AS ReplaceNull FROM ProductSales;

Stulpelyje Produktas pateikia ProductID, įvertina lauko Nuolaida reikšmes Null ir pateikia visų Neapibrėžtų reikšmių (Null reikšmė yra) reikšmę Nėra išsamios informacijos ir ji rodoma stulpelyje ReplaceNull.

VBA pavyzdys

Pastaba: Pateiktuose pavyzdžiuose parodyta, kaip naudoti šią funkciją „Visual Basic for Applications“ (VBA) modulyje. Daugiau informacijos apie darbą su VBA rasite išplečiamajame sąraše pasirinkę Kūrėjų nuoroda (šalia Ieškos) ir ieškos lauke įvedę vieną ar daugiau sąlygų.

Nurodytame pavyzdyje apskaičiuojamas formos valdiklis ir, atsižvelgus į valdiklio reikšmę, grąžinama viena iš dviejų eilučių. Jei valdiklio reikšmė yra Neapibrėžta (Null), procedūra naudoja funkciją Nz, kad konvertuotų reikšmę Neapibrėžta reikšmė (Null) į nulinio ilgio eilutę.

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, vbExclamationEnd Sub

Reikia daugiau pagalbos?

Norite daugiau parinkčių?

Sužinokite apie prenumeratos pranašumus, peržiūrėkite mokymo kursus, sužinokite, kaip apsaugoti savo įrenginį ir kt.

Bendruomenės padeda užduoti klausimus ir į juos atsakyti, pateikti atsiliepimų ir išgirsti iš ekspertų, turinčių daug žinių.