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!!

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

IsError


    Função empregada para indicar se o resultado de uma expressão gera um valor de erro, retornando True ou False, utilizando esta sintaxe:

IsError(Expressão)

Onde,
  • Expressão: argumento obrigatório, consistindo do nome de uma variável ou qualquer expressão  válida entre variáveis e/ou valores. 
As seguintes considerações são válidas para a função IsError: 
  • Valores de erros, apesar de serem códigos numéricos, são criados pelo VBA empregando-se a função CVErr, a qual produz um valor Variant subtipo Error. Normalmente, emprega-se IsError() para verificar o valor retornado por um procedimento Function. 
Exemplo: No exemplo a seguir, IsError() é empregada para verificar se o procedimento chamado Teste() retorna um valor de erro.

Dim varRetVal as Variant

On Error Resume Next

VarRetVal= Teste()
If IsError(varRetVal) Them
    ‘Ocorreu um erro, trate-o
     ...

End If

Até a Próxima!!

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

IsEmpty


    Função empregada para indicar se uma variável declarada As Variant já foi incializada, retornando True ou False, usando esta sintaxe:

IsEmpty(NomeDaVariável)

Onde, 
  • NomeDaVariável: argumento obrigatório, indicando o nome da variável declarada As Variant, que se pretende verificar. IsEmpty retorna True se a variável foi apenas declarada, mas ainda não foi inicializada (ou seja, não recebeu qualquer valor, pois o valor Empty é diferente do valor Null (Chr$(0)). 
Exemplo: Verificando o conteúdo de uma variável declarada As Variant:

Dim varValor as Variant
Dim bolTeste as Boolean
bolTeste = IsEmpty(varValor)   ‘Retorna True
varValor = Null                          ‘varValors recebe Null
bolTeste = IsEmpty(varValor)   ‘Retorna False
varValor = Empty                       ‘varValor recebe Empty (ou vazio)
bolTeste = IsEmpty(varValor)   ‘Retorna True

Até a Próxima!!

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

IsDate


    Função empregada para indicar se uma expressão contém uma data válida, utilizando esta sintaxe:

IsDate(Expressão)

Onde,
  • Expressão: qualquer argumento que, após ser avaliado, resulte em uma data ou hora válida. O VBA reconhece como datas válidas a faixa situada entre 1/1100 e 31/12/9999. 
Exemplo: O exemplo a seguir contém diversas expressões diferentes que, quando avaliadas por IsDate(), podem ser ou não consideradas como datas válidas.

Resultado = IsDate  (“Abril, 25, 1961”)  ‘Retorna True
Resultado = IsDate  (“25, Abril, 1961”)  ‘Retorna True
Resultado = IsDate  (“1961, 25, Abril”)  ‘Retorna True
Resultado = IsDate  (#4/25/1961#)         ‘Retorna True
Resultado = IsDate  (#25/4/1961#)         ‘Retorna True
Resultado = IsDate  (#1961/25/4#)         ‘Retorna True
Resultado = IsDate  (“25.4.1961”)          ‘Retorna False

Até a Próxima!!

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

IsArray


    Função empregada para verificar se uma variável contém uma matriz.utilizando esta sintaxe:

IsArray(NomeDaVariável)

Onde, 
  • NomeDaVariável: argumento obrigatório, especificando o nome da variável a ser examinada. 
  • Exemplo: Use IsArray() para verificar se um argumento, normalmente declarado como Variant, contém um valor ou uma matriz, mudando a forma de processamento do argumento. 

Function ValorAoQuadrado(varValor as Variant) as Variant

 Dim inl as integer
  If IsArray(varValor) Then
 
      For intl = 0 to Ubound(varValor)

                      varValor(intl) = varValor(intl) ^ 2

      Next

      ValorAoQuadrado = varValor

  Else

      ValorAoQuadrado = varValor ^ 2

  End If

End Function

Até a Próxima!!

sábado, 26 de outubro de 2013

FUNÇÃO DE CONVERSÃO - VAL

Val


    Função empregada para retornar o valor numérico de uma string que contenha números, com o tipo de dados adequado à magnitude do número retornado, utilizando esta sintaxe:

Onde, 
  • Expressão: argumento obrigatório, indicando qualquer expressão string válida que retorne um número. 
As seguintes considerações são válidas para a função Val:
  • A função Val tentará ler a string da esquerda para a direita identificando seus valores numéricos até o primeiro caractere não numérico, retornando então o valor numérico encontrado;
  • Símbolos e outros caracteres considerados como parte de valores numéricos, como ponto, vírgula e cifrão não são reconhecidos;
  • Val reconhece os prefixos &O para números octais e &H para números hexadecimais;
  • Caracteres de espaço, tabulação, e de quebra de linha são ignorados por Val.
  • Val reconhece apenas o caractere “.” como separador decimal válido. Se a string empregar outro tipo de formatação, utilize a função CDbl para convertê-la para um número válido. 
Exemplo: O exemplo a seguir demonstra como empregar a função Val para converter valores contidos em strings em valores numéricos correspondentes:

Dim varDbl as Double
varDbl = Val("12345")         'Retorna o número 12345
varDbl = Val("25 de abril")   'Retorna 25
varDbl = Val(&HAB10)       'Retorna -21744

Até a Próxima!!

FUNÇÃO DE CONVERSÃO - CVERR

CVErr


    Função empregada para converter valor numérico ou uma expressão que resulte em um valor numérico para um número de erro especificado pelo usuário (valor Variant com subtipo definido VarType = vbError), esta sintaxe:

CVErr(Expressão)

Onde,
  • Expressão: argumento obrigatório, que após avaliado contenha um número capaz de ser avaliado para um código de erro válido. CVErr retornará a expressão “Erro x”, onde x é o código numérico do erro ocorrido.
As seguintes considerações são válidas para a função CVErr:
  • Use a função CVErr para criar erros definidos pelo usuário nos seus procedimentos, validando os argumentos recebidos e, na eventualidade de eles estarem errados, retornar um valor de erro desejado, impedindo que o código forneça um erro em tempo de execução.
Exemplo: O exemplo  seguir demonstra como empregar a função Divide() para dividir dois números e, se ocorrer uma divisão por zero, retornar o erro equivalente: 

Function Divide(Numerador, Denominador) as Variant

   If Denominador = 0 Then
   
       Divide = CVErr(11)  ‘Erro divisão por zero, retorna “Erro 11”
   Else

       Divide = Numerador/Denominador
 
   End If

End Function

Até a Próxima!!