ciao ragazzi
ho un piccolo problema di calcoli con decimali.
il codice qui sotto funziona solo fino a 999
dopo mi da 1
esempio:
(800,10 + 80,20 = 880,3)
(1.000,50 + 10,20 = 11,7)
dovè l'errore?
CStr(Val(Text2.Text) + Val(text1.Text))
helo
ciao ragazzi
ho un piccolo problema di calcoli con decimali.
il codice qui sotto funziona solo fino a 999
dopo mi da 1
esempio:
(800,10 + 80,20 = 880,3)
(1.000,50 + 10,20 = 11,7)
dovè l'errore?
CStr(Val(Text2.Text) + Val(text1.Text))
helo
ma usi il punto come separatore di migliaia??
mi sa che si arrabbia x quello!!
no gigi non uso il punto.
sul post ho usato il punto per far capire meglio il problema.
penso che sia visual a vedere il punto.
mi spiego: in dataformat ho impostato numerico con separatore di migliaia e 2 cifre decimali per text1 e 2.
E penso che visual vede il punto in queste text.
Il fatto è che senza punto e senza le due cifre decimali, è un bel casino capire gli importi in euro.
by
gyonny
Potresti fare una funzione che dato il numero in € con il separatore delle migliaia ne ricavi un numero senza separatori fuorché la virgola (che deve essere un punto per VB).
Ciao
Cerco ombrello vecchio, nuovo, moderno o antidiluviano; purché protegga da una pioggia che vien giù come Dio la manda. Fate presto che ho l’acqua alla gola. (Noè)
C# programming and other stuffs
ragazzi grazie per l'aiuto.
ho risolto in questo modo
Dim im, c2, t2 As Currency
im = importom.Text
c2 = Combo2.Text
t2 = CCur(Text2.Text)
If im = "" Or im = 0 Then
ElseIf c2 = "Dare" Then
Text1.Text = FormatCurrency(t2 - im)
ElseIf c2 = "Avere" Then
Text1.Text = FormatCurrency(t2 + im)
Else
End If
by
La funzione val() vuole SEMPRE il punto come separatore dei decimali, a prescindere da lingua impostazione ecc.