Masquage du code VBA pour les utilisateurs

S’applique à
Access pour Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Si votre base de données Access contient du code Visual Basic pour Applications (VBA), vous pouvez masquer ce code en enregistrant votre base de données au format de fichier .accde. L’enregistrement d’une base de données en tant que fichier .accde compile tous les modules de code VBA, supprime tout le code source modifiable et compacte la base de données de destination. Votre code VBA conserve ses fonctionnalités, mais le code ne peut pas être affiché ou modifié. En général, la base de données continuera de fonctionner comme d’habitude. Vous pouvez toujours mettre à jour les données et exécuter des rapports.

Contenu de cet article

Créer un fichier .accde

Utilisez la procédure suivante pour créer un fichier .accde. Cette procédure ne modifie pas le fichier .accdb d’origine.

  1. Ouvrez votre base de données, puis cliquez sur Fichier>Enregistrer sous.
  2. Dans la zone Enregistrer sous , sous Enregistrer la base de données sous, sélectionnez Créer ACCDE , puis cliquez sur Enregistrer sous.
  3. Dans la boîte de dialogue Enregistrer sous , recherchez l’emplacement où vous souhaitez enregistrer le fichier .accde.
  4. Si vous le souhaitez, tapez un nouveau nom pour le fichier dans la zone Nom de fichier .
  5. Cliquez sur Enregistrer.
    Si un fichier portant le nom que vous spécifiez existe déjà, Access vous demande de remplacer le fichier existant. Cliquez sur Oui pour remplacer le fichier .accde existant, ou cliquez sur Non pour revenir à la boîte de dialogue Enregistrer sous et tapez un nouveau nom de fichier.

Access crée le fichier .accde, ferme le fichier .accdb d’origine, puis ouvre le fichier .accde.

Fonctionnalité modifiée dans un fichier .accde

L’enregistrement de votre base de données Access en tant que fichier .accde n’empêche pas complètement les modifications apportées à la conception de la base de données. Toutefois, les tâches suivantes ne peuvent pas être effectuées dans un fichier .accde :

  • Modification ou création de formulaires, états ou modules.
  • Utilisation de la boîte de dialogue Références VBA pour ajouter, supprimer ou modifier des références à des bibliothèques d’objets ou à des bases de données.
  • Affichage ou modification du code VBA.
  • Importation ou exportation de formulaires, d’états ou de modules Access. Toutefois, les tables, requêtes et macros peuvent être importées depuis ou exportées vers des bases de données .accdb.

Problèmes liés à la modification de formulaires, d’états ou de modules

Veillez à conserver une copie de votre base de données Access d’origine. Si vous voulez modifier la structure des formulaires, états ou modules dans un fichier .accde, vous devez modifier la base de données Access d’origine (fichier .accdb), puis l’enregistrer à nouveau en tant que fichier .accde. L’enregistrement d’une base de données Access qui contient des tables en tant que fichier .accde peut entraîner des problèmes de rapprochement de différentes versions des données si vous souhaitez modifier ultérieurement la conception des formulaires, états ou modules. Pour cette raison, l’enregistrement d’une base de données Access en tant que fichier .accde est le plus approprié pour la base de données frontale d’une application frontale/principale.

Restrictions relatives à l’enregistrement d’une base de données en tant que fichier .accde

Certaines restrictions peuvent vous empêcher d’enregistrer votre base de données Access en tant que fichier .accde :

  • Vous devez avoir accès au code VBA par mot de passe.
  • Si votre base de données Access fait référence à une autre base de données Access ou à un complément, vous devez enregistrer tous les compléments ou bases de données Access dans la chaîne de références en tant que fichiers .accde.

Si vous chiffrez une base de données avec un mot de passe avant de l’enregistrer en tant que fichier .accde, le fichier .accde est également chiffré et vous devez entrer le mot de passe chaque fois que vous l’ouvrez. Si vous ne souhaitez pas que le fichier .accde soit chiffré, vous devez déchiffrer le fichier .accdb avant de l’enregistrer en tant que fichier .accde. Après avoir enregistré la base de données en tant que fichier .accde, vous pouvez de nouveau chiffrer le fichier .accdb. Pour déchiffrer un fichier .accdb, procédez comme suit :

  1. Sous l’onglet Fichier, cliquez sur Informations, puis sur Déchiffrer la base de donnée. 
    La boîte de dialogue Annuler le mot de passe de la base de données s’affiche.
  2. Dans la boîte de dialogue Mot de passe de base de données non défini , dans la zone Mot de passe , tapez le mot de passe de la base de données.
  3. Cliquez sur OK.

Fonctionnement des références avec les fichiers .accde

Si vous essayez de créer un fichier .accde à partir d’une base de données Access (.accdb) ou d’un complément Access (.accda) qui fait référence à une autre base de données ou complément Access, Access affiche un message d’erreur et ne vous permet pas de terminer l’opération. Pour enregistrer une base de données qui fait référence à une autre base de données en tant que fichier .accde, vous devez enregistrer toutes les bases de données de la chaîne de références en tant que fichiers .accde, à partir de la première base de données référencée. Après avoir enregistré la première base de données en tant que fichier .accde, vous devez ensuite mettre à jour la référence dans la base de données suivante pour qu’elle pointe vers le nouveau fichier .accde avant de l’enregistrer en tant que fichier .accde, et ainsi de suite.

Par exemple, supposons que Database1.accdb référence Database2.accdb et Database2.accdb référence Database3.accda. Pour enregistrer Database1.accdb en tant que fichier .accde, procédez comme suit :

  1. Enregistrez Database3.accda sous Database3.accde.
  2. Ouvrez Database 2.accdb et modifiez sa référence pour qu’elle pointe vers le nouveau fichier nommé Database3.accde.
  3. Enregistrez Database2.accdb en tant que Database2.accde.
  4. Ouvrez Database1.accdb et modifiez sa référence pour qu’elle pointe vers le nouveau fichier nommé Database2.accde.
  5. Enregistrez Database1.accdb en tant que Database1.accde.

Haut de la page