Wer sich einen nützlichen Satz von Access-Add-Ins erstellt oder installiert hat, findet in seinem Add-In-Verzeichnis einige Datenbanken vor. Das muss nicht sein: Sie können auch mehrere Add-Ins in einer einzigen Datenbank anlegen. Dazu müssen Sie lediglich mehrere Sätze von Registry-Informationen in der Tabelle USysRegInfo anlegen und die benötigten Funktionen und Formulare bereithalten.
Wenn Sie mehrere Add-Ins in einer Add-In-Datenbank einbauen, gewinnen Sie gleich mehrfach:
- Sie brauchen nur eine Add-In-Datenbank, die Sie gegebenenfalls in einem Rutsch auf einem weiteren Rechner installieren können.
- Sie haben mehrere Anwendungen in einer, wodurch oft verwendete Funktionen wiederverwendet werden können.
Um ein Multi-Add-In zu erstellen, müssen Sie gegenüber einem einfachen Add-In kaum mehr Aufwand betreiben. Dies sind die notwendigen Schritte:
- Sie tragen nicht nur einen Satz von Registrierungs-Informationen in die Tabelle USysRegInfo ein, sondern gleich mehrere – jeweils mit einem eigenen Schlüssel versehen, versteht sich.
- Sie legen eine Funktion etwa namens Startup fest, die einen Parameter erwartet, der die Nummer oder Bezeichnung des aufzurufenden Add-Ins auswertet und das entsprechende Formular anzeigt beziehungsweise Funktion aufruft (also =Startup(1), =Startup(2) und so weiter). Diese Funktion geben Sie samt Parameterwert in der Tabelle USysRegInfo unter Expression an.
- Oder Sie legen für jedes Add-In eine eigene Funktion fest, also etwa =Startup1(), =Startup2() et cetera – so müssen Sie keinen Parameter übergeben. Dafür legen Sie für jedes enthaltene Add-In eine entsprechende Funktion an.
- Die Datenbankeigenschaften, die im Add-In-Manager angezeigt werden, müssen dann gleich alle enthaltenen Add-Ins beziehungsweise die Add-In-Sammlung beschreiben.
Beispiel-Multi-Add-In
Die Add-In-Datenbank MultiAddIn.mda enthält drei Sätze von Einträgen in der Tabelle USysRegInfo (s. Bild 1). Wichtig ist, dass Sie für ein Add-In jeweils identische Werte im Feld Subkey anlegen. Hier können Sie als Platzhalter für den Registry-Bereich auf dem aktuellen Rechner den Wert HKEY_CURRENT_ACCESS_PROFILE angeben – dieser wird beim Installieren durch den entsprechenden Bereich in der Registry ersetzt. Für Expression geben Sie den Namen der aufzurufenden Funktion mit führendem Gleichheitszeichen und nachfolgendem Klammernpaar an – je nach Bedarf mit Parameterwerten. Für die Datensätze mit dem Wert Library im Feld ValName geben Sie unter Value jeweils den Namen der aktuellen Datenbank an – gefolgt von einem weiteren Platzhalter namens |ACCDIR. Dieser wird bei der Installation durch den Add-In-Pfad für den aktuellen Benutzer ersetzt (etwa C:\Users\Andre\AppData\Roaming\Microsoft\AddIns).
Bild 1: Die Tabelle USysRegInfo mit den Registrierungsinformationen für drei Add-Ins
VBA-Funktionen
Die Funktionen, die durch diese drei Add-In-Menüeinträge aufgerufen werden, finden Sie in Bild 2. Wir haben hier zu Testzwecken nur MsgBox-Anweisungen hinterlegt. Diese würden Sie in der Praxis durch die Aufrufe entsprechender Funktionen oder Formulare ersetzen.
Bild 2: Die VBA-Funktionen, die durch die verschiedenen Add-In-Menü-Einträge aufgerufen werden
Eigenschaften
Wenn Sie die Datenbank-Eigenschaften öffnen und dort zur Registerseite Zusammenfassung wechseln, finden Sie einige Eigenschaften vor (s. Bild 3). Diese werden später nach der Installation des Add-Ins im Add-In-Manager angezeigt. Das ist der einzige Nachteil von Multi-Add-Ins: Sie zeigen im Add-In-Manager alle die gleichen Informationen an, nämlich die der aktuellen Datenbankdatei. Dies können wir allerdings verkraften, denn wer kontrolliert schon die Eigenschaften von Add-Ins im Add-In-Manager
Ende des frei verfügbaren Teil. Wenn Du mehr lesen möchtest, hole Dir ...
den kompletten Artikel im PDF-Format mit Beispieldatenbank
diesen und alle anderen Artikel mit dem Jahresabo