Tipo de variável dupla
O VBA Dobro tipo de dados é usado para armazenar números que requerem casas decimais. Ele pode armazenar de -1,79769313486231E308 a -4,94065645841247E-324 para valores negativos e 4,94065645841247E-324 a 1,79769313486232E308 para valores positivos.
Para declarar uma variável Double, você usa a declaração Dim (abreviação de Dimension):
1 | Dim dblA as Double |
Então, para atribuir um valor a uma variável, basta usar o sinal de igual:
1 | dlbA = 3658,25 |
Colocar isso em um procedimento é parecido com este:
12345678 | Sub dblExample ()'declara a variável duplaDim dblA as Double'preencher a variável dupladblA = 3658,25'mostra a caixa de mensagemMsgBox dblAEnd Sub |
Se você executar o código acima, a seguinte caixa de mensagem será exibida.
Tipo de dados único
O tipo de dados Single é apenas uma versão mais curta do tipo de dados Double. Devido a este fato, ele pode efetuar o arredondamento quando usado em um procedimento, pois o tipo de dado único será arredondado para 4 casas decimais, enquanto o Tipo de dados Duplo será arredondado para 12 casas decimais. Se você não precisa do tipo de dados Double, você pode usar o tipo de dados Single
Tipos de dados inteiros ou longos
Se você não precisa de uma casa decimal, pode usar o tipo de dados Int ou o tipo de dados Longo.
1 | Dim intA como inteiro |
1 | Dim lngB as Long |
Declarar variável dupla no módulo ou nível global
Nos exemplos anteriores, declaramos a variável Double em um procedimento. Variáveis declaradas com um procedimento só podem ser usadas dentro desse procedimento.
Em vez disso, você pode declarar variáveis Double no módulo ou nível global.
Nível de Módulo
Nível de módulo variáveis são declaradas no topo dos módulos de código com o Dim demonstração.
Essas variáveis podem ser usadas com qualquer procedimento nesse módulo de código.
Nível global
Nível global variáveis também são declaradas no topo dos módulos de código. No entanto, em vez de usar o Dim declaração, use o Público declaração para indicar que a variável Double está disponível para ser usada em todo o projeto VBA.
1 | DblA público como duplo |
Se você declarar a variável dupla em um nível de módulo e, em seguida, tentar usá-la em um módulo diferente, ocorrerá um erro.
Porém, se você tivesse usado a palavra-chave Public para declarar a variável double, o erro não ocorreria e o procedimento seria executado perfeitamente.
Formato duplo armazenado como string
Pode haver um momento em que você deseja formatar um tipo de dados duplo em uma string - por exemplo, você pode querer exibir um símbolo de moeda e arredondar o número para 2 casas decimais.
Para fazer isso, você usa a função Formatar.
O seguinte procedimento
1234567891011 | Sub TestDoubleToCurrencyString ()'declara a variável stringDim strMoney As String'declara o dobro e preenche o valorDim dblValue As DoubledblValue = 44055.256'converte o duplo em uma string com um símbolo monetário com 2 casas decimaisstrMoney = Formato (dblValue, "$ #, ## 0.00")'ver o resultadoMsgBox strMoneyEnd Sub |
retornaria este resultado:
Da mesma forma, você pode desejar exibir um número como um número de telefone formatado.
Este procedimento:
1234567891011 | Sub TestDoubleToPhone ()'declara a variável stringDim strPhone As String'declara o dobro e preenche o valorDim dblValue As DoubledblValue = 555968541'converte o duplo em uma string com um símbolo monetáriostrPhone = Formato (dblValue, "(000) -000 0000")'ver o resultadoMsgBox strPhoneEnd Sub |
retornaria este resultado: