Функция Nz

Можете да използвате функцията 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")

Пример

Забележка : Примерите по-долу илюстрират използването на тази функция във 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, vbExclamation
End Sub
Разширете уменията си
Преглед на обучението
Получавайте първи новите функции
Присъединете се към участниците в Office Insider

Беше ли полезна тази информация?

Благодарим ви за обратната връзка!

Благодарим ви за вашата обратна връзка. Изглежда, че ще бъде полезно да ви свържем с един от нашите агенти по поддръжката на Office.

×