Az Nz függvény használatával nullát, nulla hosszúságú karaktersorozatot (" ") vagy egy másik megadott értéket adhat vissza, ha egy Variant null értékű. 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ó |
Megadása kötelező. Egy Variantadattí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 null értékű. 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 egy lekérdezésben használja, és nem adja meg az értékhanull argumentum értékét, akkor a null értéket tartalmazó mezőkben nulla hosszúságú karakterláncot kap. |
Ha a változó argumentum értéke null, az Nz függvény egy nullát vagy egy nulla hosszúságú karakterláncot (lekérdezési kifejezésben használva mindig karakterláncot) ad vissza attól függően, hogy a környezet alapján az értéknek számnak vagy karakterláncnak kell-e lennie. Ha a nem kötelező értékhanull argumentumot is megadja, és ha a változó argumentum értéke null, akkor az Nz függvény az argumentum által megadott értéket adja vissza. Lekérdezési kifejezésben használva az NZ függvényben mindig meg kell adni az értékhanull argumentumot.
Ha a változó értéke nem null, akkor az Nz függvény a változó értékét adja eredményül.
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 2 + varX kifejezés például mindig null értéket ad vissza, ha a varX Variant értéke null. A 2 + Nz(varX) kifejezés azonban a 2-t adja eredményül.
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 varFreight értéke null.
varResult = IIf(IsNull(varFreight), _
"No Freight Charge", varFreight)
A következő példában az Nz függvénynek megadott nem kötelező argumentum szolgáltatja a visszaadandó karakterláncot arra az esetre, ha varFreight értéke null.
varResult = Nz(varFreight, "No Freight Charge")
Példák lekérdezésre
Expression |
Eredmények |
SELECT ProductID, NZ(Discount,"No Detail Available") AS Expr2 FROM ProductSales; |
A "ProductID" értéket adja vissza az Expr1 oszlopban, kiértékeli a "Discount" mező "Null" értékeit, és a "Nincs elérhető adat" értéket adja vissza az összes Null értékhez (a nem null értékeket adja vissza, ahogy van). |
SELECT ProductID, NZ(Discount,"No Detail Available") AS ReplaceNull FROM ProductSales; |
A Product oszlopban a "ProductID" értéket adja vissza, kiértékeli a "Discount" mező "Null" értékeit, és a "Nincs elérhető adat" értéket adja vissza az összes Null értékhez (a nem null értékeket adja vissza, ahogy van), és a ReplaceNull oszlopban jelenik meg. |
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