Page 2 of 2

Re: Tausender-Punkt einfügen

Posted: 21 Jun 2020, 07:09
by BoBo
Da Nachkommastellen nicht 'bepunktet' werden, habe ich die :arrow: hier separiert, im Sinn behalten und final concateniert/angehängt. Kein Hexenwerk.

Re: Tausender-Punkt einfügen

Posted: 21 Jun 2020, 08:21
by effel
dann versuch mal..

Code: Select all

sgBox % ts(111222333444555,21)
dein code kommt mit den wirklich grossen zahlen auch nicht klar :o
2020-06-21 at 15.19.31.jpeg
2020-06-21 at 15.19.31.jpeg (23.73 KiB) Viewed 1560 times
edit:
ok ich habe oben die "" vergessen, aber nachdem ich dann deinen code richtig gefüttert habe, kam bei

Code: Select all

MsgBox % ts("1112223334445,77")
ergibt: 2.147.483.647,77
heraus :problem: das komma stimmt schon mal

bei geros code ist aber auch bei

Code: Select all

wert=111222333444,77
schluss, alles was mehr als 12 stellen vor dem komma hat, wird hier ignoriert

Re: Tausender-Punkt einfügen

Posted: 21 Jun 2020, 09:35
by BoBo
Yep, der 'Deutsche' Nachkommastellen-operator erfordert es, eine solche "Zahl" im Funktionsaufruf als String zu deklarieren.

Code: Select all

MsgBox % ts("1112223334445,77")
ergibt: 2.147.483.647,77
Zu diesem Output sagt die AHK-Hilfe folgendes ...
Wenn das UpDown-Steuerelement mit einem Eingabefeld verbunden ist, empfiehlt es sich, den aktuellen Wert des UpDown-Steuerelements und nicht den des Eingabefelds abzurufen. So wird garantiert, dass immer eine im gültigen Bereich liegende Nummer zurückgegeben wird, selbst wenn der Benutzer etwas in das Eingabefeld eingetragen hat, das nicht-numerisch ist oder außerhalb des gültigen Bereichs liegt. Beachten Sie zudem, dass Zahlen länger als 3 Ziffern standardmäßig mit einem Tausendertrennzeichen (z. B. Punkt) in Dreiergruppen eingeteilt werden. Diese Trennzeichen werden nur in die Ausgabevariable des Eingabefelds gespeichert, nicht in die des UpDown-Steuerelements.
Um mittels Gui-Option eine automatisierte Ausgabe mit TS-Trennzeichen zu erhalten, muß die Variable des Eingabefeldes/Edits ausgewertet werden, die jedoch nur im definierten/zulässigen Minimal-/Maximalbereich (Range) das gewünschte Ergebnis liefert. Deshalb auch die Verlinkung im Code auf die AHK-Hilfe-Passage.

Re: Tausender-Punkt einfügen

Posted: 23 Jun 2020, 15:15
by gero
@effel
bei geros code ist aber auch bei
wert=111222333444,77
schluss, alles was mehr als 12 stellen vor dem komma hat, wird hier ignoriert

... ist doch klar ... steht doch deutlich im Definitionsbereich s.o. , weil ich üblicherweise nicht mit so grossen Zahlen jongliere ... 8-) ... und das für mich ausreichend ist ... ;)

Re: Tausender-Punkt einfügen

Posted: 23 Jun 2020, 15:51
by effel
Hallo Gero, das war keine Kritik, Sorry wenn das so wirkt, es war keine Absicht


Wie BoBo mich schon richtig eingeschätzt hat, bin ich eher Typ; b)
"du frikelst ewig am workaround herum (Methode: "Aus Schaden wird man/frau klug"...."

Ich sah deinen code und teste dann damit rum, das mache ich quasi nur so, wie soll ich es sonst lernen. :roll:

Als du dann noch freundlicherweise die zwei Kommastellen eingebaut hast. war es für mich Perfekt und liegt in meiner Funktion() kiste