Exporter les objets MS Access
Versionnez facilement votre base de données MS Access ! Exportez tout le code VBA, les formulaires, modules, requêtes et rapports vers des fichiers plats grâce à un simple script VBS, prêt pour GitHub.
Traduction automatique
Cet article fait partie de la série VBA et automatisation de MS Office :
- MS Office - Comment créer un ruban dans Excel
- MS Excel - Comment appeler un web service SOAP
- Comment optimiser une base de données MS Access existante
- VBS - Récupérer la liste des champs d'une base de données MS Access
- VBS - Script d'auto-mise à jour
- Microsoft Outlook - VBA - Enregistrer des emails en PDF
- VBS - Obtenir la liste des fichiers et générer un CSV
- MS Office - Charger une liste déroulante depuis une plage Excel
- Exporter les objets MS Access
- MS Excel - Obtenir la liste des références utilisées dans vos modules
Journal des modifications

Cet article présente un script VBS qui exporte tous les objets — formulaires, modules, requêtes, rapports et macros — d'une base de données Microsoft Access vers des fichiers texte individuels. Les développeurs peuvent ainsi versionner facilement le code source de leur application Access avec des outils comme Git et GitHub. Le script organise automatiquement les fichiers exportés dans un dossier src structuré, en créant un fichier distinct par objet. Suivre les changements et conserver un historique de la conception et de la logique de la base devient simple.
Il y a longtemps, dans une vie antérieure, j'ai développé beaucoup de bases de données MS Access et, contrairement aux outils modernes, il n'était pas possible de versionner le code (modules, macros, requêtes, etc.) dans un outil comme GitHub.
Ces objets font partie intégrante de la base de données, au même titre que les tables et leurs données. Tout est stocké dans le format .mdb (ou .mda ou .accdb). Si vous voulez les versionner, vous devez d'abord les extraire.
Deux autres articles MS Access sur ce blog : VBS - Récupérer la liste des champs d'une base de données MS Access pour auditer la structure, et Comment optimiser une base de données MS Access existante pour agir sur les résultats.
Voyons comment faire.
Exemple
En lançant cscript vbs_access_export.vbs C:\Christophe\db1.mdb dans une console DOS, vous obtiendrez ceci :
Une fois terminé, vous aurez un sous-dossier src avec un fichier par objet : indirectement, vous disposez donc d'une sauvegarde de votre code 👌.
Description
Mon script VBS https://github.com/cavo789/vbs_access_export exporte tous les objets de code (formulaires, macros, modules, requêtes et rapports) d'une base de données / application MS Access vers des fichiers plats sur votre disque.
Vous obtenez ainsi une sauvegarde rapide de votre code et vous pouvez le synchroniser sur une plateforme de versioning comme GitHub.
Le script démarre MS Access (en mode caché), ouvre la base spécifiée, traite chaque objet de code et les exporte un par un dans un dossier \src\your_database.mdb.
Le dossier src est créé automatiquement si nécessaire et vous y trouverez un sous-dossier portant le même nom que votre fichier (vous pouvez donc avoir plusieurs fichiers exportés dans le même dossier src).
Installation
Récupérez simplement une copie du script VBS https://github.com/cavo789/vbs_access_export, et éventuellement le .cmd aussi (pour vous faciliter la vie), puis enregistrez-les dans le même dossier que votre base de données.
Utilisation
Éditez le fichier .cmd et vous verrez comment ça fonctionne : il suffit de lancer le .vbs avec un seul paramètre, le nom de votre base de données — la même commande que celle montrée en début d'article.
Conclusion
Un seul script VBS transforme formulaires, modules, requêtes, rapports et macros — tout ce qui vivait uniquement dans le fichier .mdb/.accdb — en fichiers plats que vous pouvez committer sur GitHub, comparer et suivre comme n'importe quelle autre base de code. Vous travaillez souvent avec des fichiers bourrés de VBA ? Voyez aussi MS Excel - Obtenir la liste des références utilisées dans vos modules, Comment optimiser une base de données MS Access existante et VBS - Récupérer la liste des champs d'une base de données MS Access.
Cet article fait partie de la série VBA et automatisation de MS Office :
- MS Office - Comment créer un ruban dans Excel
- MS Excel - Comment appeler un web service SOAP
- Comment optimiser une base de données MS Access existante
- VBS - Récupérer la liste des champs d'une base de données MS Access
- VBS - Script d'auto-mise à jour
- Microsoft Outlook - VBA - Enregistrer des emails en PDF
- VBS - Obtenir la liste des fichiers et générer un CSV
- MS Office - Charger une liste déroulante depuis une plage Excel
- Exporter les objets MS Access
- MS Excel - Obtenir la liste des références utilisées dans vos modules
Chargement des commentaires…
