So starten Sie die Verwendung von Makros in Word
Sind Sie es leid, sich wiederholende Aufgaben in Microsoft Word auszuführen? Im Programm steckt ein leistungsstarkes Automatisierungstool, mit dem Sie diese Aufgaben erledigen können. Wir sprechen von Makros, und obwohl die Funktion auf Microsoft Visual Basic für Applikationen (VBA) basiert, können Sie sie auch dann verwenden, wenn die Idee des Codierens Ihnen die Heebie-Jeebies gibt.
Mit einem Klick auf eine Schaltfläche zeichnet Word Ihre Aktionen auf und generiert ein Makro, das Sie so oft wiedergeben können, wie Sie möchten. Wenn Sie abenteuerlustig sind, können Sie das Makro leicht ändern, um einen zusätzlichen Automatisierungsgrad zu erzielen.
Hier zeigen wir Ihnen ein einfaches, aber nützliches Beispiel: So automatisieren Sie die Such- und Ersetzungsfunktion von Word.
Makro aufnehmen
In diesem Beispiel sind Sie der angesehene Präsident der Gesellschaft zur Erhaltung antiker Zahnersatzgeräte. Sie haben Dutzende von Word-Dokumenten über historische Prothesen und dergleichen, wobei der Name der Gesellschaft prominent erwähnt wird. Dann stimmt der Vorstand plötzlich dafür, den Namen in Dental Antiques Preservation League zu ändern. Jetzt benötigen Sie eine einfache Möglichkeit, die Dokumente zu aktualisieren.
Sie können mit einem neuen leeren Dokument beginnen oder ein vorhandenes öffnen. Wenn Sie dies noch nicht getan haben, müssen Sie die Registerkarte Entwickler aktivieren.
Gehen Sie zu Datei> Optionen> Multifunktionsleiste anpassen . Aktivieren Sie rechts unter Hauptregisterkarten die Option Entwickler . Wählen Sie OK und beenden Sie.
Jetzt erstellen wir unser Makro.
- Klicken Sie auf Entwickler> Makro aufzeichnen .
- Sie werden aufgefordert, das Makro zu benennen. Geben Sie "ChangeSocietyName" oder einen anderen Namen ein, der zu Ihnen passt. Vermeiden Sie beim Benennen von Makros Leerzeichen, Punkte, Ausrufezeichen und Sonderzeichen. Andernfalls wird eine Fehlermeldung angezeigt. Sie können Zahlen verwenden, aber das erste Zeichen muss ein Buchstabe sein.
- Sie können das Makro einer Tasten- und / oder Tastenkombination zuweisen, dies ist jedoch keine Voraussetzung. Wenn Sie die Schaltfläche auswählen, können Sie sie in Word zur Symbolleiste für den Schnellzugriff hinzufügen. Sie können auch eine kurze Beschreibung des Makros hinzufügen.
- Klicken Sie auf OK , und Word zeichnet Ihre Aktionen auf. Drücken Sie Strg + H , um das Dialogfeld Suchen und Ersetzen aufzurufen.
- Geben Sie "Gesellschaft für die Konservierung antiker Dentalgeräte" in "Suchen" und "Liga für die Konservierung antiker Dentalgeräte" in "Ersetzen" ein.
- Klicken Sie auf Alle ersetzen , um den Vorgang Suchen und Ersetzen auszuführen. Dies ist die einzige Aktion, die Sie aufzeichnen möchten. Es spielt keine Rolle, ob das Makro tatsächlich Text ersetzt. Der Punkt ist, es für andere Dokumente zu speichern.
- Dies ist wichtig: Klicken Sie auf Entwickler> Aufzeichnung beenden . Andernfalls enthält das Makro alle nachfolgenden Aktionen.
Jetzt lass uns deine Handarbeit sehen. Öffnen Sie ein Dokument mit dem Namen der Gesellschaft. Klicken Sie auf Entwickler> Makros . Wenn Sie auf ChangeSocietyName doppelklicken, führt Word automatisch den Vorgang Suchen und Ersetzen aus.
Tipp: Während Sie das Makro aufzeichnen, müssen Sie möglicherweise eine Aktion ausführen, die nicht aufgezeichnet werden soll. Beispielsweise möchten Sie möglicherweise Text kopieren und in das Dialogfeld Suchen und Ersetzen einfügen, anstatt ihn manuell einzugeben. Kein Problem: Klicken Sie einfach auf Entwickler> Aufzeichnung anhalten , kopieren Sie den Text und fügen Sie ihn ein. Klicken Sie dann auf Entwickler> Recorder fortsetzen . Anschließend können Sie die Makroaufnahme wie oben beschrieben abschließen.
Obwohl wir uns hier auf Microsoft Word konzentriert haben, können Sie auch Makros verwenden, um die Produktivität in Excel zu steigern . Und es gibt viele zeitsparende Makros für Microsoft OneNote .
Eintauchen in den Code
Jetzt tauchen wir tiefer in unser neues Word-Makro ein. Gehen Sie zu Entwickler> Makros , aber anstatt auf das Makro zu doppelklicken, wählen Sie es aus und klicken Sie auf Bearbeiten . Dadurch wird der Visual Basic-Editor geöffnet, eine eigenständige Umgebung zum Erstellen von VBA-Anwendungen.
Es mag entmutigend aussehen, aber Sie können die Menüs und die meisten Bedienfelder ignorieren. Konzentrieren Sie sich stattdessen auf das Fenster mit dem Code. Wie Sie sehen können, hat Word gerade ein Makro geschrieben, das das Suchen und Ersetzen ausführt.
Sub ChangeSocietyName()
'
' ChangeSocietyName Macro
' Rename Society for the Preservation of Antique Dental Appliances
'
Selection.Find.ClearFormatting
Selection.Find.Replacement.ClearFormatting
With Selection.Find
.Text = "Society for the Preservation of Antique Dental Appliances"
.Replacement.Text = "Dental Antiques Preservation League"
.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
End With
Selection.Find.Execute Replace:=wdReplaceAll
End Sub
Lassen Sie uns erklären, was hier los ist.
Das "Sub" in der ersten Zeile steht für "Subroutine", ein kleines Programm, das alleine oder als Teil einer größeren VBA-Anwendung ausgeführt werden kann. Zeilen mit einfachen Anführungszeichen stehen für Kommentare. Die Anführungszeichen weisen VBA an, alle Anweisungen in diesen Zeilen zu ignorieren.
Dann kommen wir zum Kern des Codes: dem Code, der die Such- und Ersetzungsoperation ausführt. Wie Sie sehen können, werden im Dialogfeld Suchen und Ersetzen Werte für jede Option angegeben, einschließlich des Textes und des Ersatztextes in Anführungszeichen. Der Befehl Selection.Find.Execute am Ende entspricht dem Klicken auf die Schaltfläche „Alle ersetzen“.
Ändern des Makros
Um Makros zu verwenden, müssen Sie nicht mit dem Code herumspielen oder ihn sich ansehen. Sie können diese Funktion jedoch besser nutzen, wenn Sie bereit sind, sich darauf einzulassen. Angenommen, Sie machen beim Aufzeichnen des Makros einen Tippfehler. Anstatt es erneut aufzunehmen, können Sie es in Visual Basic aufrufen und reparieren.
Sie können das Makro auch optimieren, um es nützlicher zu machen, und das werden wir hier tun. Wenn Sie Suchen und Ersetzen manuell oder über ein Makro ausführen, merkt sich Word das Suchen und Ersetzen von Text. Wenn Sie das Dialogfeld Suchen und Ersetzen das nächste Mal öffnen, sieht es folgendermaßen aus.
Es wäre besser, die Werte zu löschen, damit ein sauberes Dialogfeld angezeigt wird. Wir machen das mit einem zweiten Makro, außer diesmal machen wir es direkt in Visual Basic.
- Wählen Sie im Visual Basic-Editor das gesamte Unterprogramm von der ersten Zeile bis zum Ende des Unterprogramms aus. Drücken Sie Strg + C, um es zu kopieren.
- Platzieren Sie den Cursor unter End Sub und drücken Sie Strg + V. Sie haben gerade das Unterprogramm dupliziert.
- Ändern Sie den Namen von ChangeSocietyName in ClearFindReplace (oder einen anderen Namen, der zu Ihnen passt). Dies ist wichtig, da VBA eine Fehlermeldung generiert, wenn Sie versuchen, Makros mit doppelten Namen auszuführen.
- Entfernen Sie in den Werten .Text und Replacement.Text den Text, lassen Sie jedoch die Anführungszeichen. Im Wesentlichen fordern Sie Word auf, nichts zu finden und durch nichts zu ersetzen, aber Sie löschen auch diese Werte.
Das Ergebnis sollte folgendermaßen aussehen:
Sub ClearFindReplace()
'
' ClearFindReplace Macro
' Clear Text from Find and Replace dialog
'
Selection.Find.ClearFormatting
Selection.Find.Replacement.ClearFormatting
With Selection.Find
.Text = ""
.Replacement.Text = ""
.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
End With
Selection.Find.Execute Replace:=wdReplaceAll
End Sub
Jetzt kehren wir zum Makro ChangeSocietyName zurück. Geben Sie unterhalb des Codes zum Suchen und Ersetzen, aber vor End Sub, ClearFindReplace ein (ohne Klammern am Ende).
Das ist richtig: Sie müssen nicht den gesamten Code eingeben, den Sie gerade erstellt haben, sondern nur den Namen des Makros.
Sub ChangeSocietyName()
'
' ChangeSocietyName Macro
' Rename Society for the Preservation of Antique Dental Appliances
'
Selection.Find.ClearFormatting
Selection.Find.Replacement.ClearFormatting
With Selection.Find
.Text = "Society for the Preservation of Antique Dental Appliances"
.Replacement.Text = "Dental Antiques Preservation League"
.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
End With
Selection.Find.Execute Replace:=wdReplaceAll
ClearFindReplace
End Sub
Wenn Word ChangeSocietyName ausführt, wird zuerst die ursprüngliche Funktion zum Suchen und Ersetzen ausgeführt. Anschließend wird ClearFindReplace als Befehl zum Ausführen des zweiten Makros interpretiert.
Mit VBA weiter gehen
Wie Sie sehen können, können Sie mit der Makroaufzeichnungsfunktion von Word auf unzählige Weise Zeit sparen. Sie können Makros erstellen, um fast jeden Vorgang zu automatisieren, und im Visual Basic-Editor können Sie die Makros optimieren, ein Makro in das andere einbetten oder eine Unterroutine erstellen, die mehrere Makros nacheinander ausführt.
Da VBA eine vollwertige Programmiersprache ist, können Sie die Unterprogramme in größere Anwendungen mit Variablen, Schleifen, bedingten Anweisungen und mehr integrieren. Sobald Sie die Grundlagen von VBA in Word gelernt haben, können Sie das gleiche Wissen anwenden, um Makros in Microsoft Excel und Access zu erstellen.
Um noch weiter zu gehen, möchten Sie mehr über VBA-Konventionen und den Visual Basic-Editor erfahren, z. B. wie Sie Ihren Code organisieren und wie Sie mit Fehlern umgehen. Aber selbst wenn Sie sich an einfache Funktionen wie die hier beschriebenen halten möchten, können Sie einen großen Beitrag zur Verbesserung Ihrer Produktivität leisten.