Nz-funktio

Voit palauttaa Nz-funktiota käyttämällä nollan, tyhjän merkkijonon tyhjä merkkijono (" ") tai jonkin toisen määritetyn arvon, kun Variantti on Null. Voit esimerkiksi muuntaa tämän funktion avulla Null-arvon toiseksi arvoksi ja estää sitä välittymästä lausekkeessa.

Syntaksi

Nz ( variantti [, valueifnull ] )

Nz-funktion syntaksilla on seuraavat argumentit:

Argumentti

Kuvaus

variantti

Pakollinen. tietotyyppiVariantti oleva muuttuja.

valueifnull

Valinnainen (ellei käytetä kyselyssä). Variantti, joka tuottaa palautettavan arvon, jos variantti-argumentti on Null. Tämä argumentti mahdollistaa sen, että voit palauttaa jonkin muun arvon kuin nollan tai tyhjän merkkijonon.

Huomautus: Jos käytät kyselyn lausekkeessa Nz-funktiota ilman valueifnull-argumenttia, tyhjäarvoja sisältävien kenttien tuloksena on tyhjä merkkijono.


Jos variantin argumentin arvo on Null, Nz-funktio palauttaa numeron nolla tai tyhjän merkkijonon (palauttaa aina tyhjän merkkijonon, jos käytetään kyselylausekkeessa) sen mukaan, näkyykö kontekstista, onko arvon oltava numero tai merkkijono. Jos valinnainen valueifnull-argumentti sisältyy Nz-funktioon, se palauttaa kyseisen argumentin määrittämän arvon, jos variantin argumentti on Null. Kyselylausekkeessa NZ-funktion tulee aina sisältää valueifnull-argumentin.

Jos variantin arvo ei ole Null, Nz-funktio palauttaa variantin arvon.

Huomautuksia

Nz-funktio on hyödyllinen lausekkeissa, jotka saattavat sisältää Null-arvoja. Voit pakottaa lausekkeen määrittämään muun kuin Null-arvon, vaikka se sisältäisikin Null-arvon, palauttamalla Nz-funktion avulla nollan, tyhjän merkkijonon tai mukautetun palautusarvon.

Esimerkiksi lauseke 2 + varX palauttaa aina Null-arvon, kun VarianttivarX on Null. 2 + Nz(varX) palauttaa kuitenkin aina arvon 2.

Voit usein myös käyttää Nz-funktiota vaihtoehtona IIf-funktiolle. Esimerkiksi seuraavassa koodissa olevat kaksi lauseketta, joihin sisältyy IIf-funktio, ovat tarpeellisia, jotta haluttu tulos voidaan palauttaa. Ensimmäistä lauseketta, joka sisältää IIf-funktion, käytetään tarkistamaan muuttujan arvo ja muuntamaan se nollaksi, jos se on Null.

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

Seuraavassa esimerkissä Nz-funktio toimii samalla tavalla kuin ensimmäisessä lausekkeessa, ja haluttu tulos saavutetaan yhdessä vaiheessa kahden asemesta.

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

Jos annat arvon valinnaiseen argumenttiin valueifnull, kyseinen arvo palautetaan, jos variantti on Null. Lisäämällä tämän valinnaisen argumentin saatat välttää IIf-funktion sisältämän lausekkeen käytön. Seuraava lauseke esimerkiksi palauttaa IIf-funktion avulla merkkijonon, jos varFreight on Null.

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

Seuraavassa esimerkissä Nz-funktioon annettu valinnainen argumentti antaa palautettavan merkkijonon, jos varFreight on Null.

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

Esimerkki

Huomautus: Seuraavissa esimerkeissä kerrotaan, kuinka tätä funktiota käytetään Visual Basic for Applications (VBA) -moduulissa. Jos haluat lisätietoja VBA:n käytöstä, valitse Sovelluskehittäjän opasHaku-kentän viereisestä luettelosta ja anna yksi tai useampi hakuehto hakukenttään.

Seuraavassa esimerkissä määritetään ohjausobjekti lomakkeessa ja palautetaan toinen kahdesta ohjausobjektin arvoon perustuvasta merkkijonosta. Jos ohjausobjektin arvo on Null, toimintosarja muuntaa Null-arvon tyhjäksi merkkijonoksi käyttämällä Nz-funktiota.

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
Kehitä taitojasi
Tutustu koulutusmateriaaliin
Saat uudet ominaisuudet ensimmäisten joukossa
Liity Office Insider -käyttäjiin

Oliko näistä tiedoista hyötyä?

Kiitos palautteesta!

Kiitos palautteestasi! Näyttää siltä, että Office-tukiedustajamme avusta voi olla sinulle hyötyä.

×