Wie kann man erreichen, da� die Makros immer zur Verfügung stehen, egal, welche Mappe gerade offen ist?
Makros werden in der Regel in der Mappe gespeichert, in der sie benötigt werden. Aber es gibt auch Makros, die immer zur Verfügung stehen sollen, die also sofort beim Aufruf von Excel bereit sein sollen.
Häufig liest man hierzu die Empfehlung, man solle die Makros in der sogenannten Persönlichen Makroarbeitsmappe speichern. Diese Methode hat jedoch gravierende Nachteile. Besser ist es, wenn man sich Add-Ins erstellt und diese über den Add-Ins-Manager einblendet.
Erstellen eines Add-Ins
- Zuerst erstellt man ganz normal seine Makros/VBA-Routinen, indem man sie aufzeichnet oder selbst schreibt (siehe hierzu auch Wo gibt man nun die Makros ein?).
- Anschlie�end wählt man in Excel in der Mappe, in der sich die Makros befinden, den Befehl Datei - Speichern unter und gibt einen aussagekräftigen Dateinamen ein.
- Dann wählt man im Dialogfeld ganz unten den Dateityp Microsoft Excel-Add-In (*.xlam). Daraufhin wechselt Excel automatisch in den Pfad, in dem sich standardmä�ig die Add-Ins befinden - man kann den Ordner auch wechseln. Hauptsache ist natürlich, dass man später wei�, wohin man gespeichert hat.
- Mit einem Klick auf Speichern steht das Add-In sofort zur Verfügung. Excel speichert es und ergänzt den Namen mit der Endung .xlam.
Nun ist das Add-In gespeichert und steht zur Verfügung, arbeiten kann man damit aber noch nicht. Um das Add-In zu aktivieren, geht man wie folgt vor:
Einbinden des Add-Ins
Aktuell
- Datei ▸ Optionen
- Add-Ins
- Verwalten: Excel-Add-Ins ▸ Los
- Durchsuchen
- Add-In-Datei suchen
- OK
- Prüfen, dass das Add-In in der Liste enthalten und das Häkchen gesetzt ist
- OK
Ab Excel 2007
- Office-Schaltfläche (oben links)
- Excel-Optionen
- Add-Ins
- Verwalten: Add-Ins > Gehe zu ...
- Durchsuchen
- Add-In-Datei suchen
- OK
- Prüfen, dass das Add-In in der Liste enthalten und das Häkchen gesetzt ist
- OK
Frühere Excel-Versionen
- Extras
- Add-Ins-Manager
- Durchsuchen
- Add-In-Datei suchen
- OK
- Prüfen, dass das Add-In in der Liste enthalten und das Häkchen gesetzt ist
- OK
Fertig - nun stehen alle Makros dieses Add-Ins immer zur Verfügung, auch, wenn man Excel beendet und neu startet.
Nachträgliches Bearbeiten der Makros
Möchte man die Makros nachträglich ändern oder ergänzen, ist dies auch kein Problem. Man wechselt mit der Tastenkombination Alt + F11 in den VBA-Editor, in dem man nun (standardmä�ig) links oben im Projektexplorer den Namen des Add-Ins findet. Doppelklickt man darauf, werden die einzelnen Elemente (Tabellen, Module, usw.) sichtbar und durch einen Doppelklick auf das entsprechende Element sieht man den Code der/des Makros bereits vor sich und kann ihn bearbeiten. Nicht vergessen, zu speichern!
Add-In in normale Excel-Datei umwandeln
Normalerweise sieht man das Add-In nur im VBA-Editor, nicht aber in Excel. Manchmal möchte man aber aus dem Add-In wieder eine "normale" Mappe erstellen, damit man die Tabellen in Excel bearbeiten kann. Das ist auch kein Problem. Man gibt dazu einfach irgendwo diesen Code ein und führt ihn aus. Wechselt man nun nach Excel, hat man als Mappe das Add-In vor sich und kann wie in einer normalen Excelmappe arbeiten:
Sub Test() Workbooks("Name_des_Add-ins.xla").Isaddin = False End Sub
personl.xls
Auch mit einer Datei mit dem Namen PERSONAL.XLSB kann man Makros allgemein verfügbar machen. Dazu wählt man folgende Schritte:
- Menü Extras - Makro - Aufzeichnen
- Namen des Makros eingeben
- Bei Makro speichern in wählen: Persönliche Makroarbeitsmappe
- Schritte durchführen, die das Makro später ausführen soll
- Aufzeichnung beenden
- Excel beenden, Frage nach Speichern mit Ja beantworten
- Excel neu starten
Nun ist die Datei PERSONAL.XLSB automatisch gespeichert und wird bei jedem Excelstart mitgeöffnet. Sie kann auch bearbeitet werden, indem man mit Alt + F11 in den Editor wechselt.
Auch wenn oft empfohlen wird, zentrale Makros in dieser Datei zu speichern, rate ich davon ab. Im Unterschied zu einem Add-In ist sie eine Mappe, die beim Excelstart mit aufgerufen wird und kann über das Menü Fenster - Einblenden eingeblendet werden. Daraus könnten sich Probleme ergeben, wenn mit der Workbooks-Auflistung gearbeitet wird. So wirkt sich z. B. folgender Code auch auf die PERSONAL.XLSB aus:
For each x in Workbooks ... Next
Auf ein Add-In wirkt es sich nicht aus.