Applies ToAccess за Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Можете да използвате функцията Nz, която връща нула, низ с нулева дължина ("") или друга указана стойност, когато променлива_от_тип_Variant е Null. Можете например да използвате тази функция, за да преобразувате стойност Null в друга стойност и да й попречите да се разпространи в израз.

Синтаксис

Nz ( (променлива_от_тип_Variant [, стойност_при_Null] )

Синтаксисът на функцията Nz използва следните аргументи:

Аргумент

Описание

променлива_от_тип_Variant

Задължителен. Променлива от тип данни Variant.

стойност_при_Null

Незадължителен (освен когато се използва в заявка). Стойност от тип Variant, съдържаща стойността, която трябва да бъде върната, ако аргументът променлива_от_тип_Variant е Null. Този аргумент ви позволява да върнете стойност, различна от нула или от низ с нулева дължина.

Забележка: Ако използвате функцията Nz в израз в заявка, без да използвате аргумента стойност_при_Null, резултатът ще бъде низ с нулева дължина в полетата, съдържащи стойности Null.

Ако стойността на аргумента на променлива_от_тип_Variant е Null, функцията Nz връща числото нула или низ с нулева дължина (винаги връща низ с нулева дължина, когато се използва в израз на заявка) в зависимост от това дали контекстът за стойността е число, или низ. Ако е включен незадължителният аргумент стойност_при_Null, тогава функцията Nz ще върне стойността, зададена от този аргумент, ако аргументът променлива_от_тип_Variant е Null. Когато се използва в израз на заявка, функцията NZ винаги трябва да включва аргумента стойност_при_Null.

Ако стойността на променлива_от_тип_Variant не е Null, тогава функцията Nz връща стойността на тази променлива_от_тип_Variant.

Забележки

Функцията Nz е полезна за изрази, които може да включват стойности Null. За да накарате един израз да изчислява стойност, различна от Null, дори когато съдържа стойност Null, използвайте функцията Nz, която връща нула, низ с нулева дължина или стойност по избор.

Например изразът 2 + varX винаги ще връща стойност Null, когато променлива_от_тип_Variant varX е Null. 2 + Nz(varX) обаче връща 2.

Често можете да използвате функцията Nz като алтернатива на функцията IIf. Например в следния код са необходими два израза, включващи функцията IIf, за да се върне желаният резултат. Първият израз, включващ функцията IIf, се използва за проверка на стойността на дадена променлива и за преобразуването й в нула, ако е Null.

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

В следващия пример функцията Nz осигурява същата функционалност като първия израз и желаният резултат се постига на една стъпка, вместо на две.

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

Ако подадете стойност за незадължителния аргумент стойност_при_Null, тази стойност ще бъде върната, когато променлива_от_тип_Variant е Null. Като включите този незадължителен аргумент, можете да успеете да избегнете използването на израз, съдържащ функцията IIf. Например следният израз използва функцията IIf, за да върне низ, ако стойността на varFreight е Null.

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

В следващия пример незадължителният аргумент, подаден на функцията Nz, предоставя низа, който да бъде върнат, ако varFreight е Null.

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

Примери за заявки

Израз

Резултати

SELECT ProductID, NZ(отстъпка;"Няма налични подробни данни") AS Израз2 FROM ProductSales;

Връща "ProductID" в колона Expr1, оценява стойностите "Null" в полето "Discount" и връща "Няма налични подробни данни" за всички стойности Null (връща стойностите, които не са Null, както е).

SELECT ProductID, NZ(отстъпка;"Няма налични подробности") AS ReplaceNull FROM ProductSales;

Връща "ProductID" в колоната Product, оценява стойностите "Null" в полето "Discount" и връща "No Details Available" за всички стойности Null (връща стойностите, които не са Null, както са) и показва в колона ReplaceNull.

Пример на VBA

Забележка: Примерите по-долу илюстрират използването на тази функция във Visual Basic for Applications (VBA). За повече информация относно работата с VBA изберете Справочни материали за разработчици в падащия списък до Търсене и въведете един или няколко израза в полето за търсене.

Следващият пример изчислява контрола във формуляр и връща един от два низа на базата на стойността на контролата. Ако стойността на контролата е Null, процедурата използва функцията Nz, за да преобразува стойност Null в низ с нулева дължина.

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

Нуждаете ли се от още помощ?

Искате ли още опции?

Разгледайте ползите от абонамента, прегледайте курсовете за обучение, научете как да защитите устройството си и още.

Общностите ви помагат да задавате и отговаряте на въпроси, да давате обратна връзка и да получавате информация от експерти с богати знания.