Inquiridor
Manipulação de números da ordem de bilhões

Pergunta
-
Boa tarde, pessoal!
Estou com um problema muito grave no que se refere a manipulação de números muito grandes. Meu programa precisou fazer uma conta com o número 3.861.122.124 e deu erro: Estouro. Eu estou usando Long Integer.
Existe alguma classe especial ou algum tipo de dado especial que suporte operações dessa magnitude?
Muito obrigado!
Felipe
quarta-feira, 23 de abril de 2008 19:45
Todas as Respostas
-
Ola,
Fiz o este abaixo e não deu erro.
Code SnippetFunction teste()
Dim i As Double 'currency
i = 3861122124.01
i = i * 2
MsgBox i
End FunctionLuciano
quarta-feira, 23 de abril de 2008 20:15 -
Olá,
Use do tipo Double
Dim n as Double
Até..
quarta-feira, 23 de abril de 2008 20:56 -
Eu usaria o Currency.quarta-feira, 23 de abril de 2008 23:46Moderador
-
Pessoal,
me perdoem, mas não especifiquei corretamente a minha dificuldade. Na verdade o problema se dá na hora de converter uma string nesses tipos de dados: double, long integer.
dim numero as string
dim numeroDouble as double
dim numeroInt as LongInteger
numero = 123456789123
numeroDouble = cdbl (numero)
numeroInt = CLng (numero)
De fato, não há problemas com cálculos aritméticos. Alguém conhece uma maneira eficiente de converter? Sei que dá pra fazer uma Function para essa necessidade, mas se já houver algo pronto...
Muito obrigado a todos!
Felipe
quinta-feira, 24 de abril de 2008 18:14 -
Se o número ultrapassar 2.147.483.647 você não conseguirá usar Long, terá que usar Currency (função CCur), ou mesmo Single ou Double.quinta-feira, 24 de abril de 2008 21:47Moderador