String aus Clipboard, split und mit Tabstops einfügen

Stelle Fragen zur Programmierung mit Autohotkey

Moderator: jNizM

kosemuckel
Posts: 3
Joined: 02 Mar 2024, 03:57

String aus Clipboard, split und mit Tabstops einfügen

02 Mar 2024, 04:08

Hallo,
ich stehe vor der Aufgabe einen Teststring aus der Zwischenablage zu lesen, diesen zu splitten und dann die einzelnen Werte in (mit Tabstops) in ein Formular automatisiert einzutragen.
Der String sieht z.B. so aus:
vorname|nachname|strasse|hausnummer|plz usw usf
Die einzelnen Eingabefelder im Zielformular sind mit der Tab-Taste erreichbar.

Der Ablauf würde also so aussehen:
F4(hotkey)
string aus Clipboard auslesen
split string |;
paste string[1] TAB paste string[2] TAB paste string[3].... ;

Ich habe zwar schon so einiges mit Autohotkey angestellt, aber das sprengt nun doch leider mein Verständnis für die Syntax.
Könnte mir hier jemand behilflich sein!?
Vielen Dank, Bernd
gero
Posts: 171
Joined: 02 Oct 2013, 05:36

Re: String aus Clipboard, split und mit Tabstops einfügen

02 Mar 2024, 07:21

meinst du sowas:

Code: Select all

Sendmode, Input
#SingleInstance, force
ClipBoard:="vorname|nachname|strasse|hausnummer|plz"
return

F4::
StringSplit,a,ClipBoard,|
Loop,% a0
{
send % a%A_Index%
send {TAB}
; sleep 50 	; ? vielleicht erforderlich ?
}
return
gruss
gero
kosemuckel
Posts: 3
Joined: 02 Mar 2024, 03:57

Re: String aus Clipboard, split und mit Tabstops einfügen

02 Mar 2024, 11:14

Hallo Gero,
ja genau das ist es wohl was ich gesucht habe.
Den harten String hab ich natürlich durch clipboard ersetzt und sleep scheint nicht nötig zu sein!

Code: Select all

Sendmode, Input
#SingleInstance, force
ClipBoard:=clipboard
return
F4::
StringSplit,a,ClipBoard,|
Loop,% a0
{
send % a%A_Index%
send {TAB}
; 
}
return
Vielen Dank für Deine Hilfe - und an diesem Beispiel hab ich die Syntax jetzt auch kapiert :)
gero
Posts: 171
Joined: 02 Oct 2013, 05:36

Re: String aus Clipboard, split und mit Tabstops einfügen

03 Mar 2024, 04:45

Hallo kosemuckel

Die Zeile:
ClipBoard:=clipboard
... schadet zwar nicht, macht aber keinerlei Sinn, da ClipBoard eine interne Variable ist die nicht deklariert werden muss.

gruss
gero
kosemuckel
Posts: 3
Joined: 02 Mar 2024, 03:57

Re: String aus Clipboard, split und mit Tabstops einfügen

03 Mar 2024, 05:33

Ausprobiert und Du hast Recht.
Ich hatte das so aus anderen Beispielen übernommen.
gregster
Posts: 9035
Joined: 30 Sep 2013, 06:48

Re: String aus Clipboard, split und mit Tabstops einfügen

03 Mar 2024, 06:27

Die Zeile kann generall einen Effekt haben - aber in deinem Anwendungsfall evtl irrelevant:
https://www.autohotkey.com/docs/v1/misc/Clipboard.htm wrote:

Code: Select all

clipboard := clipboard   ; Convert any copied files, HTML, or other formatted text to plain text.
Nebenbemerkung: Die Übersetzung dieser Stelle in der deutschen Dokumentation - "plain text" = "Klartext" - finde ich allerdings etwas ungenau bzw unglücklich. Sollte meiner Meinung nach eher "unformatierter Text", "reiner Text" o. ä. heißen. Klartext bezieht sich mMn eher auf Kryptographie/Verschlüsselungs-Kontexte.
gero
Posts: 171
Joined: 02 Oct 2013, 05:36

Re: String aus Clipboard, split und mit Tabstops einfügen

03 Mar 2024, 06:58

@gregster
Macht das nicht nur innerhalb eines Labels oder Hotkeys Sinn ?
Im Setup kommt das doch nur beim Start zum tragen ... ist doch keine Direktive für das ganze Script ?
Oder liege ich hier falsch ?

gruss
gero
gregster
Posts: 9035
Joined: 30 Sep 2013, 06:48

Re: String aus Clipboard, split und mit Tabstops einfügen

03 Mar 2024, 07:05

Klar, in dem Skript oben passiert das nur beim Skriptstart - ich vermutete ja auch, dass die Funktion dieser Zeile für diesen Fall irrelevant sein mag.
Ich wollte allerdings erklären, warum man diese Zeile in manchen Beispielen finden kann - worauf kosemuckel ja verwies.
Dass diese Zeile überhaupt eine Funktion haben kann bzw. irgendwas macht, ist ja wahrscheinlich nicht selbstverständlich für jeden AHK-Nutzer.

Return to “Ich brauche Hilfe”

Who is online

Users browsing this forum: No registered users and 25 guests