Az Nz függvény nulla értéket, nulla hosszúságú karakterláncot (" ") vagy más megadott értéket adhat vissza, ha egy Variant értéke Null. A függvénnyel például egy null értéket másik értékké alakíthat át, és megakadályozhatja egy másik kifejezésen keresztüli propagálását.
Szintaxis
Nz(változó [, értékhanull ] )
Az Nz függvény argumentumai a következők:
| Argumentum | Leírás: |
|---|---|
| változó | Kötelező megadni. Variant adattípusú változó. |
| értékhanull | Nem kötelező (kivéve, ha lekérdezésben használja).
Egy Variant, amely megad egy eredményül adandó értéket, ha a változó argumentum értéke Null. Ezzel az argumentummal nullától illetve nulla hosszúságú karakterlánctól különböző értéket adhat eredményül. Megjegyzés: Ha az Nz függvényt használja egy lekérdezés kifejezésében az értékhanull argumentum használata nélkül, az eredmény nulla hosszúságú karakterlánc lesz a null értékeket tartalmazó mezőkben. |
Ha a változó argumentum értéke Null, az Nz függvény egy nullát vagy egy nulla hosszúságú karakterláncot ad vissza (lekérdezési kifejezésben használva mindig karakterláncot) attól függően, hogy a környezet szerint az értéknek számnak vagy karakterláncnak kell-e lennie. Ha az opcionális értékhanull argumentum meg van adva, akkor az Nz függvény az argumentum által megadott értéket adja vissza, ha a változó argumentum értéke Null. Lekérdezési kifejezésben használva az NZ függvénynek mindig tartalmaznia kell az értékhanull argumentumot.
Ha a változó értéke nem Null, az Nz függvény a variant értékét adja vissza.
Megjegyzések
Az Nz függvény olyan kifejezésekben hasznos, amelyekben lehetnek null értékek. Ha egy kifejezést arra szeretne kényszeríteni, hogy eredménye egy nem null érték legyen akkor is, ha tartalmaz null értéket, az Nz függvény használatával nullát, nulla hosszúságú karakterláncot vagy egyéni visszatérési értéket adhat vissza.
A kifejezés 2 + varX például mindig Null értéket ad vissza, ha a VariantvarX értéke Null. Azonban 2 + Nz(varX) a 2 értéket adja vissza.
Sok esetben az Nz függvény az IIf függvény alternatívájaként használható. A következő kódban például két, IIf függvényt tartalmazó kifejezésre van szükség a kívánt eredményt visszaadásához. Az első, IIf függvényt tartalmazó kifejezés egy változó értékét ellenőrzi, és nullává alakítja, ha értéke null.
varTemp = IIf(IsNull(varFreight), 0, varFreight)
varResult = IIf(varTemp > 50, "High", "Low")
A következő példában az Nz függvény ugyanazt a funkciót végzi el, mint az első kifejezés, és a kívánt eredményt két lépés helyett egy lépésben éri el.
varResult = IIf(Nz(varFreight) > 50, "High", "Low")
Ha értéket ad a nem kötelező értékhanull argumentumnak, a függvény ezt az értéket adja vissza, ha a változó értéke null. E nem kötelező argumentum megadásával elkerülheti az IIf függvényt tartalmazó kifejezések használatát. A következő kifejezés például az IIf függvény használatával egy karakterláncot ad vissza, ha az érték varFreightNull.
varResult = IIf(IsNull(varFreight), _
"No Freight Charge", varFreight)
A következő példában az Nz függvénynek megadott nem kötelező argumentum adja meg a visszaadandó karakterláncot, ha varFreight értéke Null.
varResult = Nz(varFreight, "No Freight Charge")
Példák lekérdezésekre
| Expression (Kifejezés) | Eredmény: |
|---|---|
| SELECT ProductID, NZ(Discount;"No Detail available") AS Expr2 FROM ProductSales; | A "ProductID" értéket adja vissza a Kif1 oszlopban, kiértékeli a "Kedvezmény" mezőben lévő "Null" értékeket, minden Null érték esetén visszaadja a "Nincs elérhető részlet" értéket (a nem null értékeket adja vissza). |
| SELECT ProductID, NZ(Discount,"No Detail Available") AS ReplaceNull FROM ProductSales; | A "ProductID" értéket adja vissza a Termék oszlopban, kiértékeli a "Kedvezmény" mezőben lévő "Null" értékeket, minden Null érték esetén a "Nincs elérhető részlet" értéket (a nem null értékeket adja vissza) és megjelenik a ReplaceNull oszlopban. |
VBA-példa
Megjegyzés
A következő példák egy Visual Basic for Applications (VBA) modulban mutatják be a függvény használatát. A VBA használatáról a Keresés elem mellett található legördülő listából a fejlesztői forrásokat választva, majd egy vagy több keresőszót megadva kaphat további tájékoztatást.
Az alábbi példa egy űrlap vezérlőjét értékeli ki, és a talált érték alapján két karakterlánc közül megjeleníti az egyiket. Ha a vezérlő értéke null, az eljárás az Nz függvény használatával a null értéket nulla hosszúságú karakterlánccá alakítja.
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