Applies ToAccess for Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

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

Esimerkkejä kyselystä

Lauseke

Tulokset

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

Palauttaa "ProductID" sarakkeessa Lauseke1, laskee "Null"-arvot kentässä "Alennus" ja palauttaa "Ei tietoja käytettävissä" kaikille Null-arvoille (palauttaa muut kuin tyhjäarvot sellaisenaan).

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

Palauttaa "ProductID" sarakkeessa Tuote, laskee "Null"-arvot kentässä "Alennus" ja palauttaa "Ei tietoja käytettävissä" kaikille Null-arvoille (palauttaa muut kuin tyhjäarvot sellaisenaan) ja näkyy sarakkeessa KorvaaNull.

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

Tarvitsetko lisäohjeita?

Haluatko lisää vaihtoehtoja?

Tutustu tilausetuihin, selaa harjoituskursseja, opi suojaamaan laitteesi ja paljon muuta.

Osallistumalla yhteisöihin voit kysyä kysymyksiä ja vastata niihin, antaa palautetta sekä kuulla lisää asiantuntijoilta, joilla on runsaasti tietoa.