Problème lors de l’enregistrement de formulaire avec Access 2010
Je n’arrive pas à enregistrer mes formulaires sous Access 2010. J’obtiens un message du type : « Ce formulaire ou ce rapport contient des modifications incompatibles avec le format actuel de la base de données. Le formulaire ou le rapport n’a pas été enregistré« . Comment résoudre ce problème ?
Reproduire le problème
D’après quelques essais rapides, ce problème se produit au moins dans les conditions suivantes :
- Vous travaillez dans un fichier MDB.
- Vous avez ajouté un titre, mais pas de logo à votre formulaire (ou l’inverse). Le titre ayant été créé par l’icône Titre du ruban.
- Le formulaire dispose de code Visual Basic, ou au moins d’un module vide. En tout cas, sa propriété
Avec module
vautOui
.
Voici comment vous pouvez reproduire le problème :
- Ouvrez un fichier MDB.
- Créez un formulaire vide (onglet Créer du ruban, puis icône Formulaire vierge).
- Passez en mode Création sur ce formulaire.
- Toujours sur le ruban, cliquez sur l’icône Titre (onglet Création). Il n’est pas nécessaire de modifier le titre, pour l’essai.
- Faites apparaître les propriétés du formulaire (icône Feuille de propriétés, par exemple), et vérifiez que le type de sélection est
Formulaire
(modifiez sinon). - Activez l’onglet Autres.
- Réglez la propriété
Avec module
surOui
. Il n’est pas nécessaire de taper du code VBA dans le formulaire, mais ça ferait bien sûr le même effet ! - Essayez d’enregistrer votre formulaire : vous constatez que ça ne fonctionne plus, vous obtenez le message cité plus haut.
Traiter le problème
Il y a plusieurs solutions pour traiter ce problème. Les 2 premières sont d’ailleurs expliquées – nébuleusement 😉 – par la boîte d’erreur :
- La première consiste à repasser la propriété
Avec module
surNon
. Mais vous perdez tout le code VBA du formulaire, ce qui est impensable dès que le formulaire a besoin de VBA ! - La seconde consiste à supprimer les dispositions vides (les « dispositions » ou « layouts » étant des sortes de blocs de maquettage apparus avec Access 2007).
- Vous pourriez aussi supprimer le titre, et le remplacer par une zone d’étiquette faite manuellement.
La seconde approche est meilleure. C’est en fait la création du titre qui a provoqué la création indirecte d’une disposition inutile, laquelle pose problème. Pour la supprimer :
- Faites un clic du bouton droit sur le titre.
- Sélectionnez le menu Disposition / Supprimer la disposition.
Et voilà, vous pouvez maintenant enregistrer votre formulaire !
Merci, cette solution m’a sauvé !