Un membro del forum gambas-es.org ci chiede di testare questo codice:
Public Sub Main()
Dim cantidad As Float
cantidad = 12.56
Print "Símbolo monetario: " & Split(Format(cantidad, "$#.##"), " ")[1]
Print "Moneda: " & Split(Format(cantidad, "$$#.##"), " ")[1]
End
per conoscere il risultato dei sistemi operativi che hanno l'impostazione locale italiana.
Se cortesemente potete effettuare la prova, ed indicare appresso il vostro risultato. Provvederò io a comunicarlo al nostro amico spagnolo.
Grazie.
Così come lo ha postato a me non funziona o meglio mi restituisce la quantità, per avere su Ubuntu 14.04.3 e Gambas3 3.8.4 il risultato del simbolo e della moneta occorre che split legga lo zero:
Dim cantidad As Float
cantidad = 12.56
Print "Símbolo monetario: " & Split(Format(cantidad, "$#.##"), " ")[0]
Print "Moneda: " & Split(Format(cantidad, "$$#.##"), " ")[0]
'' Console:
' --> Símbolo monetario: €
' --> Moneda: EUR
Io non so se tutte le nazioni adottano un simbolo monetario, credo comunque che con quelle che usano caratteri latini il simbolo venga messo prima della cifra e quindi non comprendo come possa in Spagna funzionare con Split che legge la seconda stringa.
Infatti se noi scriviamo:
Print Format(cantidad, "$#.##")
Print Format(cantidad, "$$#.##")
'' Otteniamo:
' --> € 12,56
' --> EUR 12,56
Il simbolo monetario e la moneta come prima stringa separate da uno spazio alla cifra in seconda posizione. :-\
PS: Pare che quanto ho appena sostenuto non sia così, non c'è una regola (https://it.wikipedia.org/wiki/Simboli_di_valuta) precisa ma un consiglio che parrebbe dar ragione a shell.
Vedere nota 6 della pagina di Wikipedia.
@vuott
Vedo che hai scritto risolto, ma come? Così?:
Dim cantidad As Float, vS, vM As Variant
cantidad = 12.56
vS = Split(Format(cantidad, "$#.##"), " ")[0]
vM = Split(Format(cantidad, "$$#.##"), " ")[0]
If IsNumber(vS) Then
vS = Split(Format(cantidad, "$#.##"), " ")[1]
vM = Split(Format(cantidad, "$$#.##"), " ")[1]
Endif
Print "il simbolo è " & vS & ", e la moneta è " & vM
Mi rispondo da solo: Domanda scema, non mi ero accorto che il topic spagnolo era su due pagine ;D
Complimenti per la tua semplice e geniale soluzione :D
Che se postavi anche qui mi evitava tutto questo >:(