Interruption des fonctions Visual Basic pour Applications (VBA) dans une base de données avec des références manquantes

Numéro de la base de connaissances d’origine : 283806

Remarque

Vous devez disposer de connaissances de base en macro, codage et interopérabilité avant de commencer. Cet article s’applique à une base de données Microsoft Access (.mdb et .accdb) et à un projet Microsoft Access (.adp).

Symptômes

Si vous avez une procédure qui contient une fonction Visual Basic pour Applications et que votre base de données contient une référence à une bibliothèque d’objets ou bibliothèque de types manquante, vous pouvez recevoir l’un des messages d’erreur suivants lorsque vous compilez vos modules ou exécutez la procédure :

Message d’erreur 1

Votre base de données ou projet Microsoft Access contient une référence manquante ou rompue au nom du fichier<>.
* Pour vous assurer que votre base de données ou votre projet fonctionne correctement, vous devez corriger cette référence.
* Pour savoir comment corriger cette référence, cliquez sur Aide.

Message d’erreur 2

Erreur de compilation :
Impossible de trouver le projet ou la bibliothèque

Cause

Votre base de données contient une référence à une base de données, une bibliothèque de types ou une bibliothèque d’objets marquée comme MISSING : <referencename> dans la boîte de dialogue Références.

Résolution

Pour supprimer la référence manquante, procédez comme suit :

  1. Ouvrez votre base de données.
  2. Appuyez sur ALT+F11 pour ouvrir le Rédacteur Visual Basic.
  3. Dans le menu Outils, cliquez sur Références.
  4. Cliquez pour effacer la zone case activée de la bibliothèque de types ou de la bibliothèque d’objets marquée comme MISSING : <referencename>.

Une alternative à la suppression de la référence consiste à restaurer le fichier référencé dans le chemin spécifié dans la boîte de dialogue Références. Si le fichier référencé se trouve dans un nouvel emplacement, effacez la référence MISSING : <referencename> , puis créez une référence au fichier dans le nouveau dossier.

Remarque

Dans une application d’exécution Access, vous ne pouvez pas afficher les références à partir d’un menu. Toutefois, l’article suivant montre comment afficher des références à l’aide de code : 209849 Comment parcourir les références pour afficher leurs propriétés

Procédures pour reproduire le problème

  1. Ouvrez l’exemple de base de données Northwind.mdb.

  2. Créez un formulaire qui n’est basé sur aucune table ou requête.

  3. Dans le menu Insertion , cliquez sur Contrôle ActiveX.

  4. Dans la liste Sélectionner un contrôle ActiveX , cliquez sur Contrôle d’édition d’image Kodak, puis sur OK.

  5. Enregistrez le formulaire en tant que frmReference, puis fermez-le.

  6. Fermez Northwind.mdb, puis quittez Access.

  7. Recherchez et renommez le fichier ImgEdit.ocx ImgEdit.old.

  8. Démarrez Access, puis ouvrez Northwind.mdb.

  9. Ouvrez le module Démarrage en mode Création.

  10. Dans le menu Déboguer , cliquez sur Compiler Northwind. Notez que vous recevez les deux messages d’erreur mentionnés dans la section « Symptômes » de cet article.

  11. Cliquez sur OK. Notez que la boîte de dialogue Références s’affiche ; La référence suivante est mise en surbrillance dans la boîte de dialogue Références disponibles :

    MISSING: Kodak Image Edit Control

  12. Cliquez sur Annuler dans la boîte de dialogue Références disponibles.

  13. Recherchez et renommez le fichier ImgEdit.old en ImgEdit.ocx.

  14. Répétez l’étape 10 et notez que le message d’erreur n’apparaît plus.