Comment empêcher "AutoOpen" dans un document ouvert par VBA depuis XL
2 réponses
Emile63
Bonjour =E0 tous,
Dans un fil pr=E9c=E9dent (r=E9solu), je souhaitais ouvrir des fichiers
Excel + Word pour lister ceux qui ont du code VBA dans un onglet.
Jusque-l=E0 tout est OK.
Les fichier Excel qui ont du code sont ma=EEtris=E9s par :
Application.EnableEvents =3D False
Par-contre, les doc. Word, qui ont une proc. "Document_Open" la
d=E9clanchent quand ils sont ouverts par la proc=E9dure. Ce qui (pour
certaines d'entre-elles) plante le reste de la proc=E9dure.
Comment l'=E9viter?
Puis-je utiliser le commutateur "/m" a l'ouverture du fichier Word, ou
est-ce qu'il y a une autre commande VBA plus efficace pour l'occasion.
Merci pour votre aide,
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
michdenis
Bonjour,
Dans la procédure sur le traitement des fichiers Word, tu dois ajouter 2 lignes de code.
A ) Juste en dessous de la création de l'instance de l'application Word Set Wd = CreateObject("Word.Application") Ajoute cette ligne de code Wd.WordBasic.DisableAutoMacros 1 Elle désactive les macros.
B ) Et pour réactiver les procédure événementielles, tu ajoutes cette ligne de code Wd.WordBasic.DisableAutoMacros 0 Immédialement après la fin de la boucle "Do While.... Loop" c'est a dire après la ligne Loop
"Emile63" a écrit dans le message de groupe de discussion :
Bonjour à tous,
Dans un fil précédent (résolu), je souhaitais ouvrir des fichiers Excel + Word pour lister ceux qui ont du code VBA dans un onglet. Jusque-là tout est OK. Les fichier Excel qui ont du code sont maîtrisés par : Application.EnableEvents = False Par-contre, les doc. Word, qui ont une proc. "Document_Open" la déclanchent quand ils sont ouverts par la procédure. Ce qui (pour certaines d'entre-elles) plante le reste de la procédure. Comment l'éviter? Puis-je utiliser le commutateur "/m" a l'ouverture du fichier Word, ou est-ce qu'il y a une autre commande VBA plus efficace pour l'occasion. Merci pour votre aide,
Cordialement, Emile
Bonjour,
Dans la procédure sur le traitement des fichiers Word, tu dois ajouter 2 lignes de code.
A ) Juste en dessous de la création de l'instance de l'application Word
Set Wd = CreateObject("Word.Application")
Ajoute cette ligne de code
Wd.WordBasic.DisableAutoMacros 1
Elle désactive les macros.
B ) Et pour réactiver les procédure événementielles, tu ajoutes cette ligne de code
Wd.WordBasic.DisableAutoMacros 0
Immédialement après la fin de la boucle "Do While.... Loop"
c'est a dire après la ligne Loop
"Emile63" <sanz.emile@gmail.com> a écrit dans le message de groupe de discussion :
6ef42159-032b-4a5b-94eb-870acdcd86e9@p26g2000yqb.googlegroups.com...
Bonjour à tous,
Dans un fil précédent (résolu), je souhaitais ouvrir des fichiers
Excel + Word pour lister ceux qui ont du code VBA dans un onglet.
Jusque-là tout est OK.
Les fichier Excel qui ont du code sont maîtrisés par :
Application.EnableEvents = False
Par-contre, les doc. Word, qui ont une proc. "Document_Open" la
déclanchent quand ils sont ouverts par la procédure. Ce qui (pour
certaines d'entre-elles) plante le reste de la procédure.
Comment l'éviter?
Puis-je utiliser le commutateur "/m" a l'ouverture du fichier Word, ou
est-ce qu'il y a une autre commande VBA plus efficace pour l'occasion.
Merci pour votre aide,
Dans la procédure sur le traitement des fichiers Word, tu dois ajouter 2 lignes de code.
A ) Juste en dessous de la création de l'instance de l'application Word Set Wd = CreateObject("Word.Application") Ajoute cette ligne de code Wd.WordBasic.DisableAutoMacros 1 Elle désactive les macros.
B ) Et pour réactiver les procédure événementielles, tu ajoutes cette ligne de code Wd.WordBasic.DisableAutoMacros 0 Immédialement après la fin de la boucle "Do While.... Loop" c'est a dire après la ligne Loop
"Emile63" a écrit dans le message de groupe de discussion :
Bonjour à tous,
Dans un fil précédent (résolu), je souhaitais ouvrir des fichiers Excel + Word pour lister ceux qui ont du code VBA dans un onglet. Jusque-là tout est OK. Les fichier Excel qui ont du code sont maîtrisés par : Application.EnableEvents = False Par-contre, les doc. Word, qui ont une proc. "Document_Open" la déclanchent quand ils sont ouverts par la procédure. Ce qui (pour certaines d'entre-elles) plante le reste de la procédure. Comment l'éviter? Puis-je utiliser le commutateur "/m" a l'ouverture du fichier Word, ou est-ce qu'il y a une autre commande VBA plus efficace pour l'occasion. Merci pour votre aide,