Funkcija NZ

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")

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, vbExclamation
End Sub
Tobulinkite savo įgūdžius
Ieškoti mokymo
Pirmiausia gaukite naujų funkcijų
Prisijunkite prie „Office Insider“ dalyvių

Ar ši informacija buvo naudinga?

Dėkojame už jūsų atsiliepimus!

Dėkojame už jūsų atsiliepimą! Panašu, kad gali būti naudinga jus sujungti su vienu iš mūsų „Office“ palaikymo agentų.

×