Weblog > Word-Tipps

Websuche per Hotkey aus Word starten

Es kommt sehr oft vor, dass man bei der Arbeit in Word kurz einmal ins Internet wechselt – sei es, um die Schreibweise eines Begriffs zu klären, oder um weitere Informationen zu suchen. Mit Hilfe eines einfachen Makros können Sie Google, Wikipedia und Co. mit dem markierten Suchbegriff direkt aus Word ansteuern.

Wer kennt nicht das mühsame Prozedere? Wort oder Begriff markieren, kopieren, Suchmaschine aufrufen, Suchbegriff einfügen, Suche starten. Wer aus Word heraus Recherchen im WWW anstellt, kann dies mit Makrohilfe aber auch schneller haben. Im Folgenden stellen wir ein Word-Makro vor, welches mit dem jeweils hinterlegten Hotkey den Browser öffnet und sofort eine Suche nach dem zuvor markierten Text durchführt. Bitte verfahren Sie beim Einbinden des Makros und beim Zuweisen der Tastenkombination wie im Artikel »Geschützter Halbabstand« beschrieben.

Ein Haken sei nicht verschwiegen: Die Lösung funktioniert nur mit dem Internet Explorer. (Nachtrag: Es gibt eine Variante für Firefox, siehe erster Kommentar.) Allerdings reicht es, wenn dieser installiert ist, es kann durchaus ein anderer Standardbrowser wie etwa Firefox definiert sein. Das Makro wurde in verschiedenen Windows- und Word-Versionen getestet, grundsätzlich sollte es auch unter Mac OS funktionieren. Hier das Listing für Google:

Const BASE_URL = "http://www.google.de"
If Selection.Type = wdSelectionIP Then
Selection.MoveLeft Unit:=wdWord, Count:=1
Selection.MoveRight Unit:=wdWord, Count:=1, Extend:=wdExtend
End If
Dim ie As InternetExplorer
Set ie = New InternetExplorer
ie.Navigate (BASE_URL & "/search?hl=de&q=" & Selection)
ie.Visible = True

Der besondere Gag: Besteht keine aktuelle Markierung, wird automatisch das Wort markiert, auf dem der Cursor gerade steht, andernfalls wird die aktuelle Markierung – die dann auch mehrere Wörter umfassen kann – genommen.

Das Makro kann auf jede Suchmaschine angepasst werden, die eine Übergabe der Parameter via URL erlaubt; hierzu muss jeweils die erste Zeile (BASE_URL) und die vorletzte Zeile mit dem Aufruf angepasst werden. Hier beispielsweise die Variante (nur geänderte Zeilen, bitte darauf achten, dass die zweite geänderte Zeile ohne Umbruch in einer Zeile steht) für Wikipedia:

Const BASE_URL = "http://de.wikipedia.org"

ie.Navigate (BASE_URL & "/wiki/Spezial:Search?go=1&search=" & Selection)

Und hier die geänderten Zeilen für korrekturen.de:

Const BASE_URL = "https://www.korrekturen.de"

ie.Navigate (BASE_URL & "/cgi-bin/wortliste_suche.pl?ordner=vollsuche&suchbegr=" & Selection)

In der Praxis ist es sinnvoll, sich für jede gewünschte Websuche ein eigenes Makro anzulegen und diesen Makros jeweils unterschiedliche Tastenkombinationen zuzuweisen, zum Beispiel Strg+Shift+G für Google. Viel Spaß mit dem Makro!

Julian von Heyl am 30.11.12
Visits: 40336

Kommentare

1  Barschel

Hallo Herr Korrektor & Team (gibt es eins?),

hier eine Version für den Feuerfuchs:

Option Explicit
Sub googleFF()
Dim strFF As String
Dim wsh As Object
strFF = "firefox.exe"
Set wsh = CreateObject("WScript.Shell")
Const BASE_URL = "http://www.google.de"
If Selection.Type = wdSelectionIP Then
Selection.MoveLeft Unit:=wdWord, Count:=1
Selection.MoveRight Unit:=wdWord, Count:=1, Extend:=wdExtend
End If
wsh.Run (strFF & " " & Chr(34) & BASE_URL & "/search?hl=de&q=" & Selection & Chr(34))
Set wsh = Nothing
End Sub

Besten Gruß vom dicken B. aka Jens :-)

Geschrieben von Barschel am 02.12.12 02:06

2  Julian von Heyl

Wow, das funktioniert ja sogar! Vielen Dank! Allerdings musste ich die Zeile "Option Explicit" weglassen, was hat es damit auf sich? Scheint jedenfalls auch ohne die Zeile zu laufen.

An alle, die es ausprobieren wollen: Wenn ein neues Makro angelegt wird, dann NUR die Zeilen NACH "Sub googleFF()" und VOR "End Sub" einfügen, da "Sub NameDesMakros" und "End Sub" beim Anlegen schon vorgegeben sind.

Geschrieben von Julian von Heyl am 02.12.12 02:55

3  Jens Schmidt

Option Explicit zwingt Dich, alle Variablen (korrekt) zu deklarieren. Dieser Ausdruck muss im Klassenmodul ganz oben stehen. Wahrscheinlich hast Du noch weitere Makros darin und meinen Code darunter gesetzt. Im Grunde ist es nur eine Programmiererhilfe, kannst die Zeile also guten Gewissens löschen.

Geschrieben von Jens Schmidt am 02.12.12 15:48

Schreiben Sie einen Kommmentar

Daten merken?   Ja   Nein

 Bei Antworten auf meinen Kommentar benachrichtigen