Erreur d'exécution de macro de fichiers texte insérés à partir d'une autre macro

Traductions disponibles Traductions disponibles
Numéro d'article: 117363 - Voir les produits auxquels s'applique cet article
Cet article a été archivé. Il est proposé « en l'état » et ne sera plus mis à jour.
Agrandir tout | Réduire tout

Symptômes

Si vous exécutez un Microsoft procédure Visual Basic pour applications qui insère une macro en tant qu'un fichier texte dans un module, puis exécute la macro dans ce module, vous recevez le message d'erreur suivantes :
Erreur d'exécution '1004' :

Impossible de trouver la macro 'Nommacro'

Cause

Cette message d'erreur se produit si une des conditions suivantes est remplie :

  • Vous insérez la macro dans un module existant. (C'est le cas si vous avez déjà inséré une macro en tant que fichier texte dans le même module.) - ou -

  • Vous avez la possibilité de déclaration des variables obligatoire sélectionnée.
Le message d'erreur se produit car lorsque vous exécutez une procédure qui insère une macro en tant qu'un fichier texte dans un module a déjà été compilé, le module existant est décompilé pas reconnaître la nouvelle macro jusqu'à ce que la procédure qui insère la macro est terminée.

Notez qu'en raison de ce comportement, il est possible d'exécuter une procédure qui insère deux macros portant le même nom dans le même module, puis exécute la macro insérée en premier lieu, car la deuxième macro n'est pas reconnue jusqu'à ce que la fin de la procédure qui insère les deux macros.

L'erreur se produit dans le second cas parce que la macro est insérée au-dessus de l'instruction Option Explicit. L'instruction Option Explicit doit apparaître au début d'un module.

Contournement

Pour éviter cette message d'erreur lorsque vous exécutez une procédure Visual Basic pour insérer la totalité de la macro dans un nouveau module, puis exécutez la macro, procédez comme suit :

  • Insérez la macro en tant que fichier texte dans un nouveau module. Utilisez la méthode Add de l'objet modules pour ajouter un nouveau module au classeur avant d'insérer la macro. - et -

  • Désactivez la case à cocher déclaration des variables obligatoire sur l'onglet Éditeur (ou un onglet Général de module) de la boîte de dialogue Options. Cette option ajoute l'instruction Option Explicit automatiquement lorsque vous créez un nouveau module.
Si vous insérez plusieurs macro dans le module, effectuez l'une des opérations suivantes :

  • Combiner des macros dans un seul fichier texte. Vous ne pouvez pas les ajouter en tant que fichiers texte distinct dans le même module. - ou -

  • Insérez chaque macro de fichier texte dans un nouveau module.

Statut

Microsoft a confirmé l'existence de ce problème dans les produits Microsoft répertoriés au début de cet article.

Propriétés

Numéro d'article: 117363 - Dernière mise à jour: mardi 11 février 2014 - Version: 1.3
Les informations contenues dans cet article s'appliquent au(x) produit(s) suivant(s):
  • Microsoft Excel 97 Standard
Mots-clés : 
kbnosurvey kbarchive kbmt kbbug kberrmsg kbpending KB117363 KbMtfr
Traduction automatique
IMPORTANT : Cet article est issu du système de traduction automatique mis au point par Microsoft (http://support.microsoft.com/gp/mtdetails). Un certain nombre d?articles obtenus par traduction automatique sont en effet mis à votre disposition en complément des articles traduits en langue française par des traducteurs professionnels. Cela vous permet d?avoir accès, dans votre propre langue, à l?ensemble des articles de la base de connaissances rédigés originellement en langue anglaise. Les articles traduits automatiquement ne sont pas toujours parfaits et peuvent comporter des erreurs de vocabulaire, de syntaxe ou de grammaire (probablement semblables aux erreurs que ferait une personne étrangère s?exprimant dans votre langue !). Néanmoins, mis à part ces imperfections, ces articles devraient suffire à vous orienter et à vous aider à résoudre votre problème. Microsoft s?efforce aussi continuellement de faire évoluer son système de traduction automatique.
La version anglaise de cet article est la suivante: 117363
L'INFORMATION CONTENUE DANS CE DOCUMENT EST FOURNIE PAR MICROSOFT SANS GARANTIE D'AUCUNE SORTE, EXPLICITE OU IMPLICITE. L'UTILISATEUR ASSUME LE RISQUE DE L'UTILISATION DU CONTENU DE CE DOCUMENT. CE DOCUMENT NE PEUT ETRE REVENDU OU CEDE EN ECHANGE D'UN QUELCONQUE PROFIT.

Envoyer des commentaires

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com