Désactiver par VBA les macros d'un autre classeur
Mets ces deux macros dans un module d'un classeur. Lancer cette procédure à partir de la feuille d'excel et non de la fenêtre VBE. Elle ouvre le classeur C:\Mes documents\Classeuravecmacros.xls en désactivant ses macros. Voici les procédures :
'Procédure appelante sub OuvrirFichierSansActiverLesMacros() OpenFileWithoutMacro "C:\Mes documents", "Classeuravecmacros.xls" end sub
sub OpenFileWithoutMacro(Chemin As String, Fichier As String)
'Désactive complètement l'exécution des macros du fichier.
'N'affecte pas le comportement des autres fichiers ouverts.
'Cette procédure doit être appelée à partir de la feuille
'de calcul et non de la fenêtre VBE à cause des commandes
'Les 2 commandes suivantes s'assurent que
'la fenêtre "Open" pointe vers le bon répertoire
SendKeys "{esc}"
Application.Dialogs(xlDialogOpen).Show Chemin
'Ouvre le fichier en désactivant la macro.
SendKeys "%Fo" & Fichier & "%od"
end subAutre solution :
Application.EnableEvents = False Workbook.Open "C:\le_classeur.xls" Application.EnableEvents = True
Auteurs : Phil, Denis Michon
Mots clefs associés à cette page : désactiver, macro, vba
- Vous devez vous identifier ou créer un compte pour écrire des commentaires
