Kurze Tastenfolge von Shortcuts in Outlook starten Topic is solved

Stelle Fragen zur Programmierung mit Autohotkey

Moderator: jNizM

Jakobus
Posts: 21
Joined: 01 Jul 2019, 13:26

Kurze Tastenfolge von Shortcuts in Outlook starten

08 Jan 2020, 08:38

Hallo Freunde von AutoHotkey,

suche Hilfe für eine kurze Tastenfolge von Shortcuts,
die ich gerne über die Taste F2 in Outlook starten möchte:

BEISPIEL

ALT drücken und loslassen,
dann großes H,
dann 2 mal großes FF,
dann das Wort Calibri eingeben und
mit ENTER abschließen.

Mit dieser Tastenfolge wird ein zuvor markierter Text in Calibri umgewandelt.

Wenn möglich mit Einschränkung nur für Outlook und/oder Word.
Ist aber kein Muss.

Das Beispiel würde ich gerne als Muster nehmen,
um später Tastenfolgen mit anderen Programmen von Office 2016 mit Windows 10 zu bauen.

Danke
UnReALiTyy
Posts: 166
Joined: 06 Jun 2017, 11:38

Re: Kurze Tastenfolge von Shortcuts in Outlook starten

08 Jan 2020, 09:36

So? Oder habe ich etwas falsch verstanden?

Code: Select all

F2::Send {Alt}{H}{F}{F}Calibri{Enter}
Jakobus
Posts: 21
Joined: 01 Jul 2019, 13:26

Re: Kurze Tastenfolge von Shortcuts in Outlook starten

10 Jan 2020, 11:21

Genial gut, UnReALiTyy.

Im Prinzip ist das die Lösung.
Wenn ich Deinen Code sehe - sieht es simple aus.
Mit dieser Idee lassen sich auch andere Shortcuts einfach zusammenbauen.

Meine Wunsch wäre,
dass man die "freien" F-Tasten entsprechend für WORD, Outlook, Excel, Powerpoint, Notepad++ etc. belegt.
Wobei Outlook 2016 als Besonderheit Word 2016 als Editor benutzt.

Vielleicht weißt Du oder jemandes anderes noch einen Trick,
wie ich "Deinen" Befehl zum Beispiel ausschließlich für OUTLOOK 2016 benutzen kann?

Danke für Deine schnelle Unterstützung, UnReALiTyy.
User avatar
LuckyJoe
Posts: 264
Joined: 02 Oct 2013, 09:52

Re: Kurze Tastenfolge von Shortcuts in Outlook starten

10 Jan 2020, 12:18

Hi,

schau dir mal den Befehl "#IfWinActive" an.

HG - Lucky Joe
Herzliche Grüße aus dem Rheinland
Lucky Joe
Jakobus
Posts: 21
Joined: 01 Jul 2019, 13:26

Re: Kurze Tastenfolge von Shortcuts in Outlook starten

13 Jan 2020, 07:11

Danke für den Hinweis, LuckyJoe,

hatte verschiedene Varianten ausprobiert - leider ohne Erfolg.
Die Idee: Ist der Eintrag "Message HTML" im Fenstertitel zu finden, dann führe den Code unter F2 aus.

Beispiel:

Code: Select all

SetTitleMatchMode, 2 ; 2: Der Titel "...Message (HTML)" eines Fensters kann den angegebenen Fenstertitel an beliebiger Stelle enthalten, um eine Übereinstimmung zu sein. 
#IfWinActive "Message (HTML)"
F2::Send {Alt}{H}{F}{F}Calibri{Enter}
return
Das Script läuft ohne Fehlermeldung - doch der Code wird nicht ausgeführt.

Lieber hätte ich es, wenn ein beliebiges Email-Outlook Fenster geöffnet ist. (Neu, Antworten, Weiterleiten bzw. Antworten an alle)
Doch nach dem Einlesen hab ich die Idee aufgegeben.
Es gibt gute Beispiele in der Hilfe von AutoHotkey für das Öffnen von Fenstern in Notepad.
Leider fehlt mir das Wissen, die Besonderheiten von Outlook mit AutoHokey in Übereinstimmung zu bringen.

Vielleicht weiß jemand anderes weiter?
User avatar
haichen
Posts: 461
Joined: 09 Feb 2014, 08:24

Re: Kurze Tastenfolge von Shortcuts in Outlook starten

13 Jan 2020, 08:44

Hat der Titel Anführungszeichen?? Selbst wenn, wärs deinem Beispiel ( "... Message..") nach falsch. Versuchs mal ohne.
User avatar
haichen
Posts: 461
Joined: 09 Feb 2014, 08:24

Re: Kurze Tastenfolge von Shortcuts in Outlook starten

13 Jan 2020, 08:54

Code: Select all

SetTitleMatchMode, 2 
#IfWinActive Message (HTML)
F2::Send {Alt}hffCalibri{Enter}
return
Das müßte auch funktionieren.
User avatar
LuckyJoe
Posts: 264
Joined: 02 Oct 2013, 09:52

Re: Kurze Tastenfolge von Shortcuts in Outlook starten

13 Jan 2020, 09:01

Hallo Jakobus,

zunächst würde ich nicht mit dem Fenstertitel arbeiten, sondern mit der Fenster-Klasse (bekommst du mit Window-Spy).

Mit welcher Outlook-Version arbeitest du? Ich habe hier Outlook 2003 und Outlook 365. Bei beiden funktionieren die Zeichenformatierungen, wie du sie offensichtlich einsetzen möchtest, nicht:

Bei 2003 kann man zwar mit Alt-h auf HTML umstellen, aber dann verliert man die Markierung. Hast du auf HTML umgestellt, dann funktioniert die Umstellung auf Calibri wie folgt:

Code: Select all

#IfWinActive, ahk_class rctrl_renwnd32
	F2::
		SendInput, !tz
		Sleep 500
		SendInput, Calibri{Enter}
		Sleep 500
	Return
#IfWinActive
Bei 365 wird das folgendermaßen eingestellt:

Code: Select all

#IfWinActive, ahk_class rctrl_renwnd32
	F2::
		SendInput, !x
		Sleep 500
		SendInput, ÖH
		Sleep 500
		SendInput, !x
		Sleep 500
		SendInput, SC
		Sleep 500
		SendInput, Calibri{Del}
		Sleep 500
		SendInput, {Enter}
	Return
#IfWinActive
Ich habe die "Sleep"-Anweisungen bewusst zum Testen drin gelassen. Verkürze die Zeiten oder nehme sie ganz raus, wenn alles zu deiner Zufriedenheit läuft.

Viel Erfolg.
HG - Lucky Joe
Herzliche Grüße aus dem Rheinland
Lucky Joe
Guest

Re: Kurze Tastenfolge von Shortcuts in Outlook starten

14 Jan 2020, 08:44

++ Wow ++ Wow ++

Danke Haichen,

für das Entdecken meines Fehlers mit den Anführungszeichen!
Die Lösung funktioniert.

Habe am Ende in Anlehnung an den Vorschlag von LuckyJoe #IfWinActive mit angehängt.
Wobei in der Hilfe von AutoHotkey unter #IfWinActive finde ich dazu leider keinen Hinweis,
ob man mit dem gleichen Befehl am Ende des Codes abschließt.
Mit und ohne #IfWinActive am Ende funktioniert beides.


Danke LuckJoe,

für Deinen besonderen Vorschlag. Nebenbei, ich arbeite mit Outlook 2016.

Danke auch für die Entdeckung von "Window-Spy"
(Aufruf mit rechter Maus Taste über dem grünem H in der Tray leiste unten rechts)

"Window-Spy":
Gleich unter "Window Title, Class and Process" stehen die gewünschten Einträge
die ich mit "try & error" des Tags zuvor selbst ausprobierte.

Die Sleep Anweisungen habe ich raus nehmen können.
Wobei, mit und ohne Sleep läuft beides.
Was mich verwundert ist, dass Du anders als Haichen oben mit #IfWinActive wieder abschließt.

Leider hab ich dazu keinen Eintrag gefunden,
ob der Abschluß mit #IfWinActive am Ende besser oder schlechter ist?

Hier die angepasste Lösung von Haichen und LuckJoe

Code: Select all

;----------------------------------------------------------------------------------------------------------------------

; HAICHEN
SetTitleMatchMode, 2 			; 2: Der Titel "...Message (HTML)" eines Fensters kann den angegebenen Fenstertitel an beliebiger Stelle enthalten, um eine Übereinstimmung zu sein. 
#IfWinActive Message (HTML) 		; Der Code eine Zeile tiefer wird nur in einem Fenster ausgeführt, wo im Titel der Eintrag "...Message (HTML)" steht.
F3::Send {Alt}{H}{F}{F}Calibri{Enter}{Alt}{H}{F}{S}11{Enter} 	; Der zuvor markierter Text wird in Calibri und Zeichengröße 11 umgewandelt
return
#IfWinActive  					; Abgeschaut von Lukcy Joe, läuft aber auch ohne diese

;----------------------------------------------------------------------------------------------------------------------

; LUCKJOE
#IfWinActive, ahk_class rctrl_renwnd32
	F2::
		SendInput, !HFF 		; Cursor springt in zum "kleinen Fenster mit Pull Down Menue" Theme Fonts.
		
		SendInput, Calibri{Enter} 	; Der zuvor markierter Text wird in Calibri umgewandelt
		
		SendInput, !HFS11{Enter}	; Der noch markierte Text erhält die Zeichengröße 11
		
	Return
#IfWinActive

;----------------------------------------------------------------------------------------------------------------------
Eine zusätzlich Frage hätte ich nun doch noch.

In Outlook 2016 lässt sich der Text zum Beispiel in Dunkelblau - die Farbe die Outlook zum Antworten benutzt) darstellen.
Allerdings wüsste ich nicht, wie der Code dazu angepasst werden möchte.

Vielleicht habt Ihr beide oder andere dazu eine Idee?
User avatar
haichen
Posts: 461
Joined: 09 Feb 2014, 08:24

Re: Kurze Tastenfolge von Shortcuts in Outlook starten

14 Jan 2020, 11:48

Was mich verwundert ist, dass Du anders als Haichen oben mit #IfWinActive wieder abschließt.
Abschließen mit #IfWinActive ist richtig, wenn du keine weiteren Hotkeys für das Fenster "Message (HTML)" mehr hast. Danach gelten weitere Hotkeys wieder global. Da das aus deinem Beispiel nicht hervorging habe ich das auch nicht reingeschrieben.

steht übrigens in der Hilfe: ;)
Um die Kontextabhängigkeit zu deaktivieren, gibt man eine beliebige #IfWin-Direktive an und lässt all ihre Parameter weg. Zum Beispiel:
#IfWinActive
Wenn #IfWin ausgeschaltet ist (oder nie in einem Skript verwendet wird), sind Hotkeys und Hotstrings für alle Fenster wirksam (sofern sie nicht via Suspend oder dem Hotkey-Befehl deaktiviert wurden).
Jakobus
Posts: 21
Joined: 01 Jul 2019, 13:26

Re: Kurze Tastenfolge von Shortcuts in Outlook starten

17 Jan 2020, 06:01

Danke Haichen, (hallo LuckJoe)

für den kopierten Ausschnitt mit der Erklärung,
um die Kontextabhängigkeit von #IfWinActive zu deaktivieren

Vielen Dank für Eure beider hilfreichen Lösungen!
Von meiner Seite kann der Thema geschlossen werden.

Versuche für die Einstellung der Textfarbe in der Hilfe etwas zu finden.
Sollte ich nicht weiter kommen - öffne ich später ein neuen Thread bzw. Ticket.

Mit viel Freude für die Hilfe
Jakobus

Return to “Ich brauche Hilfe”

Who is online

Users browsing this forum: No registered users and 15 guests