Hallo
Ich habe eine zahl z.B. 4.300
nun möchte ich damit rechnen. problem: autoit denkt es soll 4,3 bedeuten.
1.230.560 z.B. bedeutet bei autoit 1.23056 oderso
wie kann ich am effektivsten die punkte entfernen?
Hallo
Ich habe eine zahl z.B. 4.300
nun möchte ich damit rechnen. problem: autoit denkt es soll 4,3 bedeuten.
1.230.560 z.B. bedeutet bei autoit 1.23056 oderso
wie kann ich am effektivsten die punkte entfernen?
StringSplit würde ich mal auf spontaner Weise sagen.
hey...
wieso stringsplit ??
guck dir StringReplace() und Number() an...
MFG chris
Hallo,
hier mal ein Beispiel:
#include <String.au3>
$zahl = InputBox(" Rechner", " Hier Ihre Rechnung eingeben !")
MsgBox(64, " Resultat", "Das Ergebnis lautet: " & _
_StringAddThousandsSep(StringReplace(Execute(StringReplace($zahl, ",", ".")), ".", ",")) & @TAB)
Exit
#cs
;$ergebnis = _StringAddThousandsSep(StringReplace(Execute(StringReplace($zahl, ",", ".")), ".", ","))
; ### Ablauf von Innen nach Aussen ###
; Erstest StringReplace > wandeln der eingegebenen Kommata von $read in Dezimalpunkte
; Execute > ausführen der Berechnung
; Zweites StringReplace > wandeln der Dezimalpunkte der Berechnung von $read ausgeben in Kommata
; _StringAddThousandsSep > Ausgabe mit Tausenderpunkt
; ### $ergebnis = _StringAddThousandsSep(StringReplace(Execute(StringReplace($read, ",", ".")), ".", ",")) ###
#ce
Um eine Zahl zum Rechnen zu erstellen, sollte das funktonieren:
[autoit]Func _NumToCalc($iNumber, $sThousandSep=".", $sDecimalPlace=",")
Return Number(StringReplace(StringReplace($iNumber, $sThousandSep, ""), $sDecimalPlace, "."))
EndFunc