Pesquisar este blog

domingo, 19 de maio de 2013

TIPOS DE DADOS SUPORTADOS PELO VBA - VARIANT

Variant


    O tipo de dados Variant é atribuído a todas as variáveis que não foram explicitamente declaradas como sendo de qualquer outro tipo (empregando-se instruções como Dim, Private, Public, Static).

    Ele é um tipo de dado especial que pode conter qualquer tipo de dado (inclusive tipos definidos pelo usuário com a instrução Type), excetuando-se strings de comprimento fixo. Além disso, é o único tipo de dado que pode conter os valores especiais Empty, Error, Nothing e Null. Para determinar o tipo de dado atualmente contido em uma variável declarada As Variant, empregue as funções VarType ou TypeName.

    Dados numéricos podem ser atribuídos a qualquer variável declarada como sendo do tipo Variant variando desde -1.797693134862315E308 a -4.94066E-324 para valores negativos e de 4.94066E-324 a 1.797693134862315E308 para valores positivos.

    De forma geral, as variáveis Variant mantêm o tipo original do dado numérico, ou seja, caso você atribua um valor tipo Currency a uma variável Variant, todas as operações subsequentes sobre este valor irão ser efetuados sobre o tipo Currency.

    Caso uma operação aritmética qualquer executada sobre o tipo de dado atual exceda o valor original do número atribuído, o tipo contido na variável Variant será promovido para o próximo tipo numérico de mais alto nível disponível (Ex.: Se você atribuir um valor Integer a uma variável Variant e efetuar uma operação de multiplicação sobre ele de forma que o valor resultante seja maior do que 65.536, o tipo de dado será redefinido para Long). Caso uma variável Variant contenha valores dos tipos Currency, Decimal ou Double e o valor contido na variável exceda o limite tolerável para um destes tipos, ocorrerá um erro em tempo de execução.

    As variáveis do tipo Variant podem conter qualquer tipo de dado. Números e Strings numéricas são considerados como números, permitindo efetuar operações aritméticas sobre ambos os tipos de dados.

    Quando uma variável do tipo Variant é declarada, ela possui o valor Empty antes que qualquer valor lhe seja atribuído. Caso a variável seja empregada em um contexto numérico (em uma operação aritmética qualquer), o valor Empty será convertido para zero (0). Da mesma forma, caso seja empregada em uma operação envolvendo strings, o valor Empty será convertido para uma string vazia ("").

    O valor Null, atribuído ao caractere ASCII = 0 (zero), é diferente do valor Empty. Quando uma variável Variant contém o valor Null, ela já foi inicializada, indicando ausência de dado válido.

Até a Próxima!!

Nenhum comentário:

Postar um comentário