Italian errore nella visualizazione di un importo

nonno

Active Member
Licensed User
Longtime User
Ciao ragazzi, non riesco a capire il motivo, il risultato di un importo mi scrive la virgola al posto del punto e viceversa, devo istallare una specifica libreria?.
Grazie mille per eventuali suggerimenti.


Dim Valore1 As Float
Dim Valore2 As Float

lbl1.Text = 2121.50
lbl2.Text = 0.50
Valore1 = lbl1.Text
Valore2 = lbl2.Text

lbl1.Text = NumberFormat2(Valore1 + Valore2,0,3,2, True) risultato 2,122.00 invece di 2.122,00
 
D

Deleted member 103

Guest
Ciao ragazzi, non riesco a capire il motivo, il risultato di un importo mi scrive la virgola al posto del punto e viceversa, devo istallare una specifica libreria?.
Grazie mille per eventuali suggerimenti.


Dim Valore1 As Float
Dim Valore2 As Float

lbl1.Text = 2121.50
lbl2.Text = 0.50
Valore1 = lbl1.Text
Valore2 = lbl2.Text

lbl1.Text = NumberFormat2(Valore1 + Valore2,0,3,2, True) risultato 2,122.00 invece di 2.122,00
B4a usa in aritmetica sempre il formato inglese, per cambiare il risultato in italiano devi usare una cosa del genere.
B4X:
dim n As String = NumberFormat2(Valore1 + Valore2,0,3,2, True) 
lbl1.Text = zEnToIt(n)

Sub zEnToIt(numero As String) As String
    Dim z As String
    z=numero.Replace(",","#")
    z=z.Replace(".",",")
    z=z.Replace("#",".")
    Return z
End Sub
 

MarcoRome

Expert
Licensed User
Longtime User
Puoi utilizzare anche queste due opzioni:

1. OPZIONE ( clicca QUI )

2. OPZIONE

Richiede Libreria AHLocale

B4X:
Dim numero, numero1 As AHNumeric

Dim risultato As Double = "119654.56"
   
    numero.InitializeCurrency
    Log(numero.Format(risultato))
   
    numero1.InitializeNumber
    Log(numero1.Format(risultato))

Risultato:

119.654,56 €
119.654,56
 

nonno

Active Member
Licensed User
Longtime User
Dim numero, numero1 As AHNumeric

Dim risultato As Double = "119654.56"

numero.InitializeCurrency
Log(numero.Format(risultato))

numero1.InitializeNumber
Log(numero1.Format(risultato))
Grazie Mille Devil
 
Top