Tausender-Punkt einfügen Topic is solved

Stelle Fragen zur Programmierung mit Autohotkey

Moderator: jNizM

BoBo
Posts: 6564
Joined: 13 May 2014, 17:15

Re: Tausender-Punkt einfügen

Post by BoBo » 21 Jun 2020, 07:09

Da Nachkommastellen nicht 'bepunktet' werden, habe ich die :arrow: hier separiert, im Sinn behalten und final concateniert/angehängt. Kein Hexenwerk.

effel
Posts: 546
Joined: 16 Jan 2018, 13:34

Re: Tausender-Punkt einfügen

Post by effel » 21 Jun 2020, 08:21

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 1512 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

BoBo
Posts: 6564
Joined: 13 May 2014, 17:15

Re: Tausender-Punkt einfügen

Post by BoBo » 21 Jun 2020, 09:35

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.

gero
Posts: 170
Joined: 02 Oct 2013, 05:36

Re: Tausender-Punkt einfügen

Post by gero » 23 Jun 2020, 15:15

@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 ... ;)

effel
Posts: 546
Joined: 16 Jan 2018, 13:34

Re: Tausender-Punkt einfügen

Post by effel » 23 Jun 2020, 15:51

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

Post Reply

Return to “Ich brauche Hilfe”