Função Nz

Você pode usar a função NZ para retornar zero, um cadeia de comprimento zero ("") ou outro valor especificado quando uma variante for nula. Por exemplo, você pode usar essa função para converter um valor nulo em outro valor e impedir que ele se propague por meio de uma expressão.

Sintaxe

NZ ( variante [, valueifnull ] )

A sintaxe da função Nz tem os seguintes argumentos:

Argumento

Descrição

variant

Obrigatório. Uma variável de tipo de dados Variant.

valueifnull

Opcional (a menos que seja usado em uma consulta). Um Variant que fornece um valor a ser retornado se o argumento variant for Nulo. Esse argumento permite que você retorne um valor diferente de zero ou uma cadeia de comprimento zero.

Observação: Se você usar a função Nz em uma expressão de uma consulta sem usar o argumento valueifnull, os resultados serão uma cadeia de comprimento zero nos campos que contiverem valores nulos.


Se o valor do argumento Variant for nulo, a função NZ retornará o número zero ou uma cadeia de comprimento zero (sempre retorna uma cadeia de comprimento zero quando usada em uma expressão de consulta), dependendo se o contexto indica o valor deve ser um número ou uma cadeia de caracteres. Se o argumento valueifnull opcional estiver incluído, a função NZ retornará o valor especificado por esse argumento se o argumento variante for nulo. Quando usado em uma expressão de consulta, a função NZ sempre deve incluir o argumento valueifnull ,

Se o valor de Variant não for nulo, a função NZ retornará o valor de Variant.

Comentários

A função NZ é útil para expressões que podem incluir valores nulos . Para forçar uma expressão a ser avaliada como um valor nãonulo , mesmo que contenha um valor nulo , use a função NZ para retornar zero, uma cadeia de comprimento zero ou um valor de retorno personalizado.

Por exemplo, a expressão 2 + varX sempre retornará um valor nulo quando a variantevarX for nula. No entanto, 2 + Nz(varX) retornará 2.

Você geralmente pode usar a função NZ como uma alternativa para a função IIF . Por exemplo, no código a seguir, duas expressões incluindo a função IIF são necessárias para retornar o resultado desejado. A primeira expressão incluindo a função IIF é usada para verificar o valor de uma variável e convertê-la em zero se for nula.

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

No próximo exemplo, a função NZ fornece a mesma funcionalidade que a primeira expressão, e o resultado desejado é obtido em uma etapa em vez de duas.

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

Se você fornecer um valor para o argumento opcional valueifnull, esse valor será retornado quando Variant for nulo. Ao incluir esse argumento opcional, você poderá evitar o uso de uma expressão que contém a função IIF . Por exemplo, a expressão a seguir usa a função IIF para retornar uma cadeia de caracteres se o valor de varFreight for nulo.

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

No próximo exemplo, o argumento opcional fornecido para a função NZ fornece a cadeia de caracteres a ser retornada se varFreight for nulo.

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

Exemplos de consulta

Expressão

Resultados

SELECIONE ProductID, NZ (desconto, "nenhum detalhe disponível") como expr2 da ProductSales;

Retorna "ProductID" na coluna expr1, avalia os valores ' NULL ' no campo "Discount" e retorna "nenhum detalhe disponível" para todos os valores nulos (retorna os valores não nulos, como se encontram).

SELECIONE ProductID, NZ (desconto, "nenhum detalhe disponível") como ReplaceNull da ProductSales;

Retorna "ProductID" no produto da coluna, avalia os valores ' NULL ' no campo "Discount" e retorna "nenhum detalhe disponível" para todos os valores nulos (retorna os valores não nulos, como se encontram) e exibe na coluna ReplaceNull.

Exemplo de VBA

Observação: Exemplos a seguir demonstram o uso dessa função em um módulo do Visual Basic for Applications (VBA). Para obter mais informações sobre como trabalhar com o VBA, selecione referência do desenvolvedor na lista suspensa ao lado de Pesquisar e insira um ou mais termos na caixa de pesquisa.

O exemplo a seguir avalia um controle em um formulário e retorna uma de duas cadeias de caracteres com base no valor do controle. Se o valor do controle for nulo, o procedimento usará a função NZ para converter um valor nulo em uma cadeia de comprimento zero.

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

Observação:  Esta página foi traduzida automaticamente e pode apresentar erros gramaticais ou imprecisões. Nosso objetivo é que este conteúdo seja útil para você. Você pode nos dizer se as informações foram úteis? Use o artigo em inglês como referência.​

Expanda suas habilidades no Office
Explore o treinamento
Obtenha novos recursos primeiro
Ingressar no Office Insider

Essas informações foram úteis?

Obrigado por seus comentários!

Agradecemos pelos seus comentários! Parece que pode ser útil conectar você a um de nossos agentes de suporte do Office.

×