Функция Nz

Важно :  Данная статья переведена с помощью машинного перевода, см. Отказ от ответственности. Используйте английский вариант этой статьи, который находится здесь, в качестве справочного материала.

Функция Nz можно использовать для возврата нулевой пустая строка (""), или другого заданного значений при вариант Null. Например можно использовать эту функцию преобразовать значение Null в другое значение и позволяет предотвратить его распространения через выражение.

Синтаксис

Nz ( переменная [, новое_значение ] )

Функция Nz имеет аргументы, указанные ниже.

Аргумент

Описание

переменная

Обязательный аргумент с тип данных Variant.

значение_если_null

Необязательный аргумент (если он используется не в запросе) типа Variant. Указывает значение, которое будет возвращено, если аргумент Переменная имеет значение Null. Этот аргумент позволяет вернуть значение, отличное от нуля или пустой строки.

Примечание : Если функция Nz используется в выражении запроса без аргумента Значение_если_null , в результате выполнения этой функции для полей, содержащих пустые значения, будет возвращена пустая строка.


Если значение аргумента переменная равно Null, функция Nz возвращает нуль или пустую строку в зависимости от того, является ли значение (согласно контексту) числом или строкой. Она всегда возвращает пустую строку при использовании в выражении запроса. Если указан необязательный аргумент значение_если_null, то функция Nz возвращает значение, заданное в нем, если аргумент переменная имеет значение Null. При использовании в выражении запроса функция NZ должна всегда включать аргумент значение_если_null.

Если значение аргумента переменная не Null, то функция Nz возвращает значение переменная.

Примечания

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

Например, выражение 2 + varX всегда будет возвращать значение Null, если аргумент переменная 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, оно будет возвращаться, когда вариант равняется Null. Благодаря включению этого необязательного аргумента можно не использовать выражение, содержащее функцию IIf. Например, следующее выражение использует функцию IIf для возврата строки, если значение varFreight равно Null.

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

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

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

Пример

Примечание : В примерах ниже показано, как использовать эту функцию в модуле Visual Basic для приложений (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

Примечание : Отказ от ответственности относительно машинного перевода. Данная статья была переведена с помощью компьютерной системы без участия человека. Microsoft предлагает эти машинные переводы, чтобы помочь пользователям, которые не знают английского языка, ознакомиться с материалами о продуктах, услугах и технологиях Microsoft. Поскольку статья была переведена с использованием машинного перевода, она может содержать лексические,синтаксические и грамматические ошибки.

Совершенствование навыков
Перейти к обучению
Первоочередный доступ к новым возможностям
Присоединиться к программе предварительной оценки Office

Были ли сведения полезными?

Спасибо за ваш отзыв!

Благодарим за отзыв! Возможно, будет полезно связать вас с одним из наших специалистов службы поддержки Office.

×