Hej! Testa. Testa: Pelle:Formatera valuta
Vill formatera 10000€ till 10.000€
Lyckas bara få 10.000,00€
Hur får man bort decimalerna ,00??
Kan ju använda replace men går det använda någon inbyggd formatering i Asp.netSv: Formatera valuta
("##,###")
Inte säkert på att detta går.
Du kan annars hitta mer om formatering genom att leta i SDKn ang string.format eller ToString(format)
mvh Johan Sv:Formatera valuta
Label1.Text = String.Format("{0:c}", mittvarde)
där c står för currencySv: Formatera valuta
Att formatera med "c" ger just de två extra decimalerna som jag antar att PärInge inte vill ha...
Johans förslag funkar, men ger inga decimaler alls (om man nu vill ha det, tex vid 150,50).
Decimal-formateringen "G29" ger antalet relevanta decimaler upp till 29 stycken, tex:
150,00 = 150
150,50 = 150,5
150,2750 = 150,275
osv
Då får du dock inte med dig "Currency"-symbolen.
Den kan du dock hämta ut själva med:
"System.Threading.Thread.CurrentThread.CurrentCulture.NumberFormat.CurrencySymbol"
Ett exempel bli då:
Dim d as Decimal = 150.5
Dim s as String = String.Format({0} {1}, d.ToString("G29"), System.Threading.Thread.CurrentThread.CurrentCulture.NumberFormat.CurrencySymbol)
Alternativt kan du skapa en egen "NumberFormat" klass och då tilldela den egna värden, typ:
Dim myNumForm as New System.Globalization.NumberInfoFormat
myNumForm.CurrencyDecimalDigits = 0
myNumForm.X = y osv
och sen formatera ditt tal med:
Dim s as String = myNumber.ToString("c", myNumForm)
Detta blir dock liknande Johans variant bara att du får med viss annan formatering och valutasymbolen gratis...
Good luck! :)