Pesquisar este blog

domingo, 27 de outubro de 2013

FUNÇÃO DE VERIFICAÇÃO DE CONTEÚDO - ISMISSING

IsMissing


    Função empregada para indicar se um argumento opcional declarado com As Variant foiou não passado para um procedimento, retornando True ou False,utilizando esta sintaxe:

IsMissing(NomeDoArgumento)

Onde, 
  • NomeDoArgumento: argumento obrigatório, consistindo no nome de um argumento declarado como “Optional... As Variant. 
As seguintes considerações são válidas para a função Is Missing:
  • IsMissing deve ser usada para verificar se um argumento opcional foi recebido por um procedimento, porém, IsMissing retornará True apenas se o  argumento for declarado como As Variant. Todos os outros tipos de dados irão falhar ao se empregar IsMissing (principalmente porque os demais tipos de dados são automaticamente inicializadas para seus valores padrão – números para zero, string para “”); 
  • Para tipos de dados diferentes de Variant, empregue a sintaxe de declaração de argumentos opcionais com um valor padrão. Nesta situação, você poderá testar o argumento contra um valor determinado para indicar se o mesmo foi ou não recebido; 
  • É muito eficaz empregar um valor padrão determinado para um argumento de procedimento e evitar testá-lo no interior do código no caso de o mesmo não ter sido recebido. 
  • Se IsMissing for empregada  em um argumento declarado como ParamArray, sempre retornará o valor False; 
  • Para verificar se um argumento declarado como ParamArray foi ou não recebido, empregue as funções Lbound e Ubound para verificar os limites da matriz recebida. 
Exemplo: No próximo exemplo, a função IsMissing é empregada para verificar se os argumentos opcionais esperados pelo procedimento foram ou não recebidos.

Public Function TesteDeArgumentos(Optional varValor as Variant, _
                                                             Optional intValor as Integer = -1)

...
If IsMissing(varValor) Then
    ‘O procedimento irá passar por aqui se varValor não for fornecido
...
End If

If intValor = -1 Then
    ‘Como intValor não é Variant, verifica-se se a variável possui valor padrão como
    ‘forma de especificar se ela foi ou nãorecebida

...
End If

Até a Próxima!!

Nenhum comentário:

Postar um comentário