Startseite › Foren › Deutsches LiveCode-Forum › Zahlen mit deutschem Tausender Trenner formatieren › Antwort auf: Zahlen mit deutschem Tausender Trenner formatieren
April 9, 2018 um 11:44 Uhr
#5169
Hi Andreas,
ich habe dafür diese kleine Funktion geschrieben.
Hinweis:
Funktioniert so, wie sie ist, nur mit Zahlen mit durch KOMMA getrennte Nachkommestellen
function tausender_trenner tZahl
## Das hier liefern wir am Schluss zurück
put empty into zahlMitTausenderTrenner
## Hat die Zahl Nachkommastellen?
## Dann müssen wir uns die merken, denn wir arbeiten nur mit den ganzen Zahlen VOR dem Komma
put FALSE into nachkommastellen
set itemdel to ","
if the num of items of tZahl = 2 then
put TRUE into nachkommastellen
put item 2 of tZahl into dieNachkommastelle
put item 1 of tZahl into tZahl
end if
## Nun ganz so, wie man es mit einem Stück Papier, Stift,
## Schere und Uhu machen würde!
repeat
## wir fangen hinten mit den letzten drei Ziffern an:
put char -3 to -1 of tZahl into tTemp
if the num of chars of tTemp < 3 then
put tTemp before zahlMitTausenderTrenner
exit repeat
else
##Punkt hier einfügen
put "." & tTemp before zahlMitTausenderTrenner
end if
## Nun die bereits bearbeiteten Ziffern löschen
delete char -3 to -1 of tZahl
end repeat
## Vielleicht haben wir vorn einen Punkt, den brauchen wir aber nciht
if char 1 of zahlMitTausenderTrenner = "." then
delete char 1 of zahlMitTausenderTrenner
end if
## Nachkommastellen? Dann wieder hinten drankleben
if nachkommastellen then
put "," & dieNachkommastelle AFTER zahlMitTausenderTrenner
end if
return zahlMitTausenderTrenner
end tausender_trenner
🙂