Wat is een ADD-in
Add-Inn's geven een uitbreiding bovenop de in de reeds in MS Access aanwezige functionaliteiten. Bepaalde kan men downloaden van de Microsoft website, men kan er tevens verkrijgen, al dan niet gratis, van andere ontwikkelaars. Tenslotte kan men er zelf ontwikkelen.
Hier ga ik het hebben over Add-inns die hoofdzakelijk op het niveau van mijn eigen MS Access toepassingen gebruikt worden. Men kan drie types Add-Inn's onderscheiden.
Ik heb enkele 'Menu Add-Inns' ontworpen, van de drie is dit de minst complexe.
Feitelijk is een add-inn een MS Access database voorzien van VBA-code om de
functionaliteit van de Add_Inn te verwezenlijken. De toepassing moet echter
bewaard worden met de .accda extensie.
Ik start steeds met het creëren van een nieuwe .accdb
database, ik voorzie de nodige VBA-code en test deze goed uit. Vervolgens de
extensie wijzigen. Sluit de database en wijzig via Windows
verkenner de .accdb extensie in .accda . Geef geen aandacht aan de verwittiging dat door de wijziging van de extensie het bestand
onbruikbaar kan worden.
Bij de versie 2003 en vorige gaat het over de extensie .mdb en mda voor de Add-Inn database.
Om als Add-Inn te kunnen fungeren moet in de .accda een tabel met de naam USysRegInfo gecreëerd worden. Deze tabel, samen met nog andere systeem-objecten is niet zichtbaar in het Access-objecten navigatie paneel. Om systeem objecten in het open .accda-bestand zichtbaar te maken gaat men via het menu 'Bestand' (File) naar 'Opties' (Options) keuze 'Huidige database' (Current database) en onder het item Navigatie (Navigation) drukt men op de knop 'Navigatie opties' (Navigation options) vervolgens kruist men de opties 'Toon verdoken objecten' (Show Hidden objects) en 'Toon systeem objecten' (Show System objects) aan.
Functioneel dient de USysRegInfo tabel om informatie van de Add-Inn te schrijven naar de Windows registry. Het is zeker noodzakelijk de juiste velden en correcte data te voorzien. Hierna de noodzakelijke velden voor een Menu Add-Inn :
| Field | Data Type | Functioneel |
| Subkey | Text (255) | De naam van de registry Subkey waar de specifieke
waarde opgeslagen wordt. |
| Type | Number(Long Integer) | Volgende types zijn mogelijk : key (0), string (1), DWORD (4) |
| ValName | Text (255) | Naam van registry waarde |
| Value | Text (255) | Waarde van registry waarde |
Wanneer men éénmaal een USysRegInfo tabel ontworpen heeft, en de Add-Inn goed werkt, kan men voor het creëren van een volgende Add-Inn deze tabel in de nieuwe database importeren. Dit via het tabblad 'External data' en de keuze mogelijkheid 'Access'. Dan moet men zich niet meer bekommeren over het ontwerpen van de tabel en moet men enkel de inhoud van de rijen aanpassen.
Voor een 'Menu Add-Inn' komen er in de tabel UsysRegInfo drie rijen. Het is belangrijk dat deze rijen de juiste data bevatten.
Schema UsysRegInfo tabel.
| Subkey | Type | ValName | Value |
| HKEY_CURRENT_ACCESS_PROFILE\Menu Add-Ins\naam van de Add-Inn | 0 | ||
| HKEY_CURRENT_ACCESS_PROFILE\Menu Add-Ins\naam van de Add-Inn | 1 | Library | |ACCDIR\NaamVan.accda |
| HKEY_CURRENT_ACCESS_PROFILE\Menu Add-Ins\naam van de Add-Inn | 1 | Expression | =FunctieNaam() |
Het is zeer belangrijk dat bovenstaande stappen correct uitgevoerd worden, want men moet er zich goed bewust van zijn dat er informatie naar de Windows registry geschreven wordt.
Waar moet het .accda bestand bewaard worden?
Dit is afhandelijk van de Versie van Windows.
Voor Access 2010 op een PC met Windows 7 is dit : C:\Users\Gebruiker\AppData\Roaming\Microsoft\AddIns
waar gebruiker moet vervangen worden door de naam van de desbetreffende gebruiker
Eens bovenstaande stappen correct uitgevoerd kan de Add-Inn in Access via
de Add-Inn manager geïnstalleerd worden.
Via het tabblad Database Tools en het Add-Inns icoontje kiest men Add-Inn manager, daar vind men de
beftreffende Add-Inn met de omschrijving 'naam van de Add-Inn' die het laatste gedeelte is in het veld Subkey.