PDA

View Full Version : [Visual Basic] Problemi con Divisione


darkmind
22-09-2003, 09:53
Ciao,
dopo aver eseguito queste due righe di codice, dovrei ritrovarmi un numero con la virgola e diversi decimali, ma il mitico Vb mi ritorna un intero..
Mi date una mano?

Private Sub Command1_Click()
Dim valore As Double, divisione As Double
valore = Val("1130005601050400")
divisione = valore / 93
MsgBox "Ris: " & divisione
End Sub

Esatto: 12150597860756,9892...
Vb: 12150597860757

.. arrotonda il numero anche se specifico il tipo Double (quindi numero in virgola mobile)

maxithron
22-09-2003, 10:35
fai così:

Private Sub Command1_Click()
Dim valore As Variant
Dim divisione As Currency
valore = ("1130005601050400")
divisione = valore / 93
MsgBox "Ris: " & divisione
End Sub

maxithron
22-09-2003, 10:46
Un'altra alternativa sarebbe di fargli fare due operazioni e cioè togliere una cifra al valore (che è di 16 cifre e questo a visual basic proprio non gli va a genio...) ed eseguire un'altra operazione aggiungendo il valore che hai sottratto.

Oppure, si potrebbe usare CDbl.

maxithron
22-09-2003, 10:51
Originariamente inviato da maxithron
fai così:

Private Sub Command1_Click()
Dim valore As Variant
Dim divisione As Currency
valore = ("1130005601050400")
divisione = valore / 93
MsgBox "Ris: " & divisione
End Sub


Anzi....+ semplicemente:

Private Sub Command1_Click()
Dim valore As Double
Dim divisione As Currency
valore = ("1130005601050400")
divisione = valore / 93
MsgBox "Ris: " & divisione
End Sub

così ti dà il valore esatto = 12150597860756,9892

darkmind
22-09-2003, 10:56
Grazie mille.
Non ci avevo ancora pensato :p

maxithron
22-09-2003, 11:00
di niente anzi....mi fa piacere ogni tanto ricordarmi il vb6!!:)