2009-10-21 7 views
1

J'ai une référence manquante dans ma liste Références (dans la vue Code VBA). C'est une référence à un OCX pour un produit que nous n'utilisons plus.Comment trouver une référence manquante dans MS Access

Je suis très bien avec la suppression (décochant) la référence, mais je me demande si cela va revenir me mordre.

est-il un moyen de savoir où forme/rapports, il aurait été utilisé?

Le supprimer et ensuite compiler le MDB suffit-il?

Répondre

3

Je crois que si vous utilisez l'option stricte, la compilation devrait prendre toutes les questions où vous avez fait référence à un objet qui n'existe plus

+1

Les OCX référencés dans le code provoqueront des erreurs de compilation, mais les OCX qui sont uniquement intégrés dans les contrôles des formulaires/rapports ne lanceront aucune erreur avant l'exécution, c'est-à-dire lorsque le formulaire/rapport avec OCX incorporé est ouvert. –

0

La compilation pourrait ne pas attraper s'il utilise la liaison tardive, mais le plus souvent il va l'attraper dans la compilation. Vous pouvez également effectuer des tests en exécutant la MDB recompilée.

+0

Je ne pensais pas pouvoir utiliser le mot «compiler» trois fois en deux phrases. Pardonnez ma grammaire. –

-1

Si le produit est un contrôle, l'accès ne fonctionne pas (par défaut) laissez-vous regarder la "source" comme ça.

Sinon je faire une recherche dans le code VBA pour voir où il est créé. par exemple:

Dim p as New Old_Product 

Ensuite, faire une recherche pour Old_Product à travers le projet.

Selon la mission de votre application critique est, je remove it et de voir ce qui se passe. Je suppose que vous avez mis hors service l'ancien produit? D'après mon expérience, les applications d'accès ne sont pas essentielles à la mission. Si elles descendent pendant une heure (alors que vous essayez de réparer l'ancienne référence) ce n'est pas la fin du monde.

+3

Pourquoi, dans le monde, croyez-vous qu'une application Access serait désactivée alors qu'un programmeur travaille sur le frontal? Aucun développeur compétent ne permet aux utilisateurs de partager un frontal, ni de distribuer une application non divisée (avec des formulaires/rapports et des tables dans un seul fichier monolithique). Et aucun développeur compétent ne travaillerait sur une copie en direct de la partie frontale. Le remplacement de l'avant de la production par l'avant fixe n'est pas un gros problème. –

+0

Eh bien, l'App Access descendra du point de vue des utilisateurs. Ouvrez un formulaire en mode Création, ajoutez un contrôle Acitve-X. Enregistrez le formulaire et fermez-le. Puis désinscrivez le contrôle. David, que pensez-vous qu'il se passera si vous ouvrez à nouveau le formulaire? –

Questions connexes