Lies in den Artikel rein und unten bekommst Du ein unschlagbares Angebot!
Wenn wir in den Anwendungen eines frisch installierten Office-Pakets VBA-Code ausführen wollen, führt dies mitunter nicht zum gewünschten Ergebnis. Stattdessen erscheint eine Meldung, die uns mitteilt, dass die Makros in diesem Projekt deaktiviert sind. Der Grund ist einfach: Mit VBA-Code können wir eine Menge Schaden anrichten, zum Beispiel Dateien oder Verzeichnisse löschen. Daher ist seine Ausführung standardmäßig deaktiviert. Wie wir den VBA-Code dennoch ausführen können, zeigt dieser Artikel.
Neulich wollte ich in einer frischen Office-Installation das Ereignis ausprobieren, das beim Starten von Outlook ausgelöst wird und das wir im VBA-Projekt von Outlook (zu öffnen von Outlook aus mit der Tastenkombination Strg + F11) wie folgt zum standardmäßig vorhandenen Modul ThisOutlookSession hinzufügen:
Private Sub Application_Startup() MsgBox "Startup" End Sub
Wider Erwarten führt ein Schließen und erneutes Öffnen von Outlook nicht zur Anzeige des Meldungsfensters. Also versuchte ich, die Prozedur direkt vom VBA-Editor aus aufzurufen, indem ich die Einfügemarke darin platzierte und auf F5 drückte. Das Ergebnis war die Meldung aus Bild 1. Da die Onlinehilfe in diesem Fall recht wenig hilfreich war, ist dieser Artikel entstanden.
Bild 1: Meldung beim Versuch, eine VBA-Prozedur aufzurufen
Ausführung von Makros aktivieren
Es gibt verschiedene Einstellungen für die Ausführung von Makros. Diese finden wir, wenn wir die Optionen für die jeweilige Office-Anwendung des aktuell installierten Pakets öffnen. Dazu klicken wir im Ribbon auf Datei und im nun erscheinenden Bereich auf Optionen. Hier wechseln wir zum Bereich Trust Center und klicken dort auf die Schaltfläche Einstellungen für das Trust Center… (siehe Bild 2).
Bild 2: Anzeigen des Trust Centers
Im nun erscheinenden Dialog Trust Center wechseln wir zum Bereich Makroeinstellungen. Hier finden wir für Microsoft Outlook beispielsweise standardmäßig die Einstellungen aus Bild 3 vor. Mit dem Wert Benachrichtigungen für digital signierte Makros. Alle anderen Makros sind deaktiviert. ist es kein Wunder, dass unsere VBA-Prozeduren nicht ausgeführt werden.