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

Puteți utiliza funcția Nz pentru a returna zero, șir de lungime zero (" ") sau o altă valoare specificată atunci când variant este Null. De exemplu, puteți utiliza această funcție pentru a efectua conversia unei valori Null într-o altă valoare și a împiedica propagarea ei într-o expresie.

Sintaxă

Nz ( variant [, valueifnull ] )

Sintaxa funcției Nz are următoarele argumente:

Argument

Descriere

variant

Obligatoriu. O variabilă cu tip de dateVariant.

valueifnull

Opțional (doar dacă nu se utilizează într-o interogare). Un Variant care furnizează o valoare care să se returneze dacă argumentul variant este Null. Acest argument permite returnarea unei valori diferite de zero sau un șir de lungime zero.

Notă: Dacă utilizați funcția Nz într-o expresie dintr-o interogare fără a utiliza argumentul valoaredacănul, rezultatul va fi un șir diferit de zero în câmpul care conține valori nule.

Dacă valoarea argumentului variant este Null, funcția Nz returnează cifra zero sau un șir de lungime zero (întotdeauna returnează un șir de lungime zero atunci când se utilizează într-o expresie de interogare), în funcție de context, care indică dacă valoarea trebuie să fie un număr sau un șir. Dacă argumentul opțional valueifnull este inclus, funcția Nz va returna valoarea specificată de argumentul respectiv dacă argumentul variant este Null. Când este utilizată într-o expresie de interogare, funcția NZ trebuie să includă întotdeauna argumentul valueifnull.

Dacă valoarea pentru variant nu este Null, funcția Nz returnează valoarea pentru variant.

Observații

Funcția Nz este utilă pentru expresii care pot include valori Null. Pentru a forța o expresie să se evalueze ca valoare non-Null chiar și atunci când aceasta conține o valoare Null, utilizați funcția Nz pentru a returna zero, un șir de lungime zero sau o valoare returnată particularizată.

De exemplu, expresia 2 + varX va returna întotdeauna o valoare Null atunci când variant varX este Null. Cu toate acestea, 2 + Nz(varX) returnează 2.

Puteți utiliza adesea funcția Nz ca alternativă la funcția IIf. De exemplu, în următorul cod, pentru a returna rezultatul dorit, sunt necesare două expresii care conțin funcția IIf. Prima expresie care conține funcția IIf este utilizată pentru a verifica valoarea unei variabile și a efectua conversia acesteia la zero dacă valoarea este Null.

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

În exemplul următor, funcția Nz oferă aceeași funcționalitate ca prima expresie, iar rezultatul dorit se obține într-un singur pas în loc de doi.

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

Dacă furnizați o valoare pentru argumentul opțional valueifnull, valoarea respectivă va fi returnată atunci când variant este Null. Prin includerea acestui argument opțional, este posibil să puteți evita utilizarea unei expresii care conține funcția IIf. De exemplu, următoarea expresie utilizează funcția IIf pentru a returna un șir dacă valoarea varFreight este Null.

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

În exemplul următor, argumentul opțional furnizat pentru funcția Nz furnizează șirul de returnat în cazul în care varFreight este Null.

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

Exemple de interogare

Expresie

Rezultatele

SELECT ProductID, NZ(Reducere,"Niciun detaliu disponibil") AS Expr2 FROM ProductSales;

Returnează "IDProdus" în coloana Expr1, evaluează valorile "Null" din câmpul "Discount" și returnează "Fără detalii disponibile" pentru toate valorile Null (returnează valorile nenule ca atare).

SELECT ProductID, NZ(Reducere,"Niciun detaliu disponibil") AS ReplaceNull FROM ProductSales;

Returnează "IDProdus" în coloana Produs, evaluează valorile "Null" din câmpul "Discount" și returnează "Fără detalii disponibile" pentru toate valorile Null (returnează valorile nenule ca atare) și se afișează în coloana ReplaceNull.

Exemplu VBA

Notă: Exemplele care urmează demonstrează utilizarea acestei funcții într-un modul Visual Basic for Applications (VBA). Pentru mai multe informații despre lucrul cu VBA, selectați Referințe pentru dezvoltatori în lista verticală de lângă Căutare și introduceți unul sau mai mulți termeni în caseta de căutare.

Exemplul următor evaluează un control dintr-un formular și returnează unul din două șiruri bazate pe valoarea controlului. Dacă valoarea controlului este Null, procedura utilizează funcția Nz pentru a efectua conversia unei valori Null într-un șir de lungime zero.

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

Aveți nevoie de ajutor suplimentar?

Doriți mai multe opțiuni?

Explorați avantajele abonamentului, navigați prin cursurile de instruire, aflați cum să vă securizați dispozitivul și multe altele.

Comunitățile vă ajută să adresați întrebări și să răspundeți la întrebări, să oferiți feedback și să primiți feedback de la experți cu cunoștințe bogate.