|
Nz 函数
使用 Nz 函数可以返回 0,或一个空字符串(" ") ,或者当一个 Variant 为 Null 时,该函数返回其他的指定值。例如,您可以使用该函数将 Null 值转换为其他值并防止它通过表达式扩散。
语法
Nz(variant[, valueifnull])
Nz 函数具有如下参数:
参数 说明
variant 各种数据类型的 Variant。
Valueifnull 可选参数(除非在查询中使用)。一个 Variant,提供当 variant 参数为 Null 时的返回值。该参数使您能够返回一个值(除了 0 或空字符串以外的其他值)。
注意 如果在查询的表达式中使用了不带 ValueIfNull 参数的 Nz 函数,则对包含 Null 值的字段,其返回结果为空字符串。
当 variant 参数值为 Null 时,Nz 函数返回 0 还是空字符串(当在查询表达式中使用该参数时,通常返回空字符串)取决于上下文中该值是数值还是字符串。如果包含了可选的 valueifnull 参数,则当 variant 参数为 Null 时,Nz 函数将返回由该参数指定的值。当在查询表达式中使用时,NZ 函数通常会包含 valueifnull 参数。
当 variant 参数值不为 Null 时,Nz 函数返回 variant 参数值。
说明
Nz 函数对可能包含 Null 值的表达式是很有用的。要使表达式即使在包含 Null 值时也能计算得到一个非 Null 值,可使用 Nz 函数来返回 0,空字符串,或一个自定义的返回值。
例如,表达式 2 + varX 在 Variant varX 是 Null 时,返回一个 Null 值。然而,2 + Nz(varX) 却返回 2 。
您可以经常使用 Nz 函数作为 IIf 函数的替代函数。例如,在以下的代码中,需要用两个包含 IIf 函数的表达式来返回想要的值。第一个包含 IIf 函数的表达式用于检查变量的值,如果该值为 Null 就将它转换为 0。
varTemp = IIf(IsNull(varFreight), 0, varFreight)
varResult = IIf(varTemp > 50, "High", "Low")在下一个示例中,Nz 函数提供与第一个表达式相同的函数功能,并且一步即可获得所需的值而不需要分两步进行。
varResult = IIf(Nz(varFreight) > 50, "High", "Low")如果为可选参数 valueifnul 提供了一个值,则当 variant 为 Null 时,将返回该值。通过这个可选参数,可以避免使用含有 IIf 函数的表达式。例如,下面的下表达式使用 IIf 函数,在 varFreight 的值为 Null 时返回一个字符串。
varResult = IIf(IsNull(varFreight), _
"No Freight Charge", varFreight)在下一个示例中,当 varFreight 为 Null 时,则 Nz 函数的可选参数提供了返回的字符串。
varResult = Nz(varFreight, "No Freight Charge") |
|