AutoMakros und VBA

Die Automakros werden gerne eingesetzt. Sie wollen beim Öffnen eines Dokumentes einen Dialog anzeigen. Oder wenn aufgrund einer bestimmten Vorlage ein neues Dokument erstellt wird, soll gleich das Dokument gespeichert werden. 

Das sind die klassischen Aufgaben der Automakros. Es gibt folgende Automakros, die Sie einsetzen können:

 

Makroname
Ereignis
Art der Datei
Beschreibung
AutoNew
Laden einer Vorlage
Dokumentvorlage
Beim Erstellen eines neuen Dokuments aufgrund der Vorlage, in der das Automakro steht
AutoOpen
Direktes Öffnen eines Dokumentes oder einer Vorlage
Dokument
Dokumentvorlage
Beim Öffnen eines vorhandenen Dokuments oder direktes Öffnen einer Dokumentvorlage
AutoExec
Laden einer Vorlage
Dokumentvorlage
Beim Starten von Word oder Laden einer globalen Vorlage oder eines Addins
AutoClose
Schließen eines Dokumentes / Vorlage Dokument
Dokumentvorlage
Beim Schließen eines Dokuments oder einer Dokumentvorlage, die direkt geöffnet war
AutoExit
Entladen einer Vorlage
Dokumentvorlage
Beim Beenden von Word oder Entladen einer globalen Vorlage oder eines Addins

  

Die Frage, die sich natürlich jetzt stellt ist klar: wo kommt denn das Automakro hin?

Die Anwort ist wie so oft nicht eindeutig. Denn es gibt verscheidenen Wege ein Automakro einzubinden. Sie könne die Automakros aus der Tabelle einfach in ein beliebiges Modul einfügen, der Name des Moduls ist dabei völlig unerheblich. In diese Modul kommt einfach eine Prozedur mit dem Namen aus der Tabelle. Das wars, so findet Word automatisch dieses Makro.

Sie könne auch den Weg über Word selbst gehen: einfach über das Menü Extras | Makro | Makros.. und dort Ihre gewünschte Dokumentvorlage auswählen. Bei Name den Namen aus der Tabelle wählen und auf Erstellen klicken. Damit wechseln Sie in den VBA-Editor an die Stelle, wo Word automatisch die Prozedur erstellt hat. Dort geben Sie dann Ihren Code ein.

Es gibt aber noch eine weitere Möglichkeit: Sie erstellen ein Modul und benennen es nach den Namen aus der Tabelle. Nun gehen Sie in das Codefenster für das Modul und schreiben eine Prozedur, sie den Namen Main haben muss: Sub Main(). Dort schreiben Sie Ihren Code rein. Damit erkennt Word auch das Automakro.

 

Aber damit noch nicht genug. Denn es gibt noch eine weitere Möglichkeit Automakros zu erstellen. Dazu gibt es Ereignisse in dem Modul ThisDocument. Dort finden Sie in der folgenden Tabelle aufgelisteten Ereignisse. Diese können Sie auch als Automakros benutzen. Aber bedenken Sie, dass bei einem Addin im Startup-Ordner diese Makros grundsätzlich nicht abgearbeitet werden.

 

Makroname
Ereignis
Beschreibung
Document_Open()
Direktes Öffnen einer Vorlage oder eines Dokumentes
Beim Öffnen eines vorhandenen Dokuments oder direktes Öffnen einer Dokumentvorlage
Document_New()
Erstellen eines neuen Dokumentes aufgrund der Vorlage
Beim Erstellen eines neuen Dokuments aufgrund der Vorlage, in der das Automakro steht
Document_Close()
Schließen eines Dokumentes / Vorlage
Beim Schließen eines Dokuments oder einer Dokumentvorlage, die direkt geöffnet war
Document_Sync()
Dokument synchronisieren
Beim Synchronisieren einer lokale Kopie eines Dokuments, das Teil eines Dokumentarbeitsbereichs ist, mit der Kopie auf dem Server
Document_XMLAfterInsert()
XML-Element hinzufügen
Beim Hinzufügen eines neues XML-Elementes zu einem Dokument, wird für jedes Element ausgelöst
Document_XMLBeforeDelete()
XML-Element löschen
Beim Löschen eines XML-Elementes aus einem Dokument, wird für jedes Element ausgelöst

 

Die Codebeispiele listen die Möglichkeiten nochmal für die gewünschten Ereignisse wie Öffnen oder Schließen auf. 

Aber Automakros können auch lästig sein. Sie haben eine Vorlage mit einem Automakro, das soll aber jetzt nicht beim Starten ausgeführt werden. Wei können Sie das verhindert? Ganz einfach: Während die Vorlage geöffnet wird, drücken Sie die Taste Umschalt bzw. Shift solange, bis die Vorlage geöffnet ist. Damit wird das Ausführen der Automakros verhindert.

Aber Sie können auch mit VBA das ausführen von Automakros verhindern. Dies funktioniert mit dem Befehlszeile:

WordBasic.DisableAutoMacros

  



Diese Seite zu Mister Wong hinzufügen
Diese Seite zu ecure.del.icio.us hinzufügen
Diese Seite zu webnews hinzufügen
Diese Seite zu Google Bookmarks hinzufügen
Diese Seite zu linkarena hinzufügen
Diese Seite zu Yahoo hinzufügen










Für weitere Infos bitte auf den Text klicken

http://www.prawi-officewelt.de
 .::. nach oben .::.
 
 
©2008 - 2024 www.VBA-Wordwelt.de - alle Rechte vorbehalten
 
Kontakt | Impressum
los Suche

Cookies speichern Informationen lokal auf Ihrem Rechner, ohne die Verwendung kann der Funktionsumfang beeinträchtigt werden. Weitere Informationen


Annehmen