Ouverture d'un fichier sans lancer la macro ?

Ouverture d'un fichier sans lancer la macro ? - VB/VBA/VBS - Programmation

Marsh Posté le 21-02-2003 à 16:39:41    

Salut !
Petit problème qui m'arrive alors que presque toute mon
application est terminée :
à partir de mon interface VBA (Excel 2000) je veux ouvrir
un autre fichier Excel contenant aussi une macro au démarrage.
Le problème c'est que la macro s'éxécute alors que je ne veux
pas ! Je veux qu'il l'ouvre par défaut sur "Désactiver les macros".
Faut-il mettre un paramètre supplémentaire à :
"Workbooks.Open Filename:="çavamarcherbordel.xls"
 
Une idée ???
Merci d'avance...
:jap:

Reply

Marsh Posté le 21-02-2003 à 16:39:41   

Reply

Marsh Posté le 21-02-2003 à 17:01:02    

essaye sur www.vbfrance.com, c'est un bon bourdellll de VB  :D


Message édité par cvb le 21-02-2003 à 17:01:11
Reply

Marsh Posté le 25-02-2003 à 11:45:16    

Merci pour l'adresse ! ;)  
D'autres suggestions  :??:  
Je voudrais juste qu'il l'ouvre en sélectionnant
"Désactiver les macros" : c'est possible ?

Reply

Marsh Posté le 25-02-2003 à 11:48:37    

C'est hyper simple mais fallait le savoir: au moment où tu cliques pour ouvrir ton fichier, tu dois appuyer sur shift simultanément.  Ca marche autant dans l'Explorer que dans l'application elle-même.


---------------
Whichever format the fan may want to listen is fine with us – vinyl, wax cylinders, shellac, 8-track, iPod, cloud storage, cranial implants – just as long as it’s loud and rockin' (Billy Gibbons, ZZ Top)
Reply

Marsh Posté le 03-03-2003 à 21:35:23    

C'est vrai qu'en ouvrant un classeur excel tout en appuyant sur la touche Shift, on inhibe la macro Workbook_Open.
Mais peut-on programmer cette inhibition?
J'ai cru comprendre que Zbod voulait ouvrir son fichier contenant une macro Workbook_Open à partir d'une macro d'un autre classeur. Or dans ce cas, il serait sans doute souhaitable que cela ce fasse par du code VBA, sans avoir à appuyer sur une touche au bon moment!
 
J'ai essayer d'enregistrer une macro, en ouvrant un fichier contenant Workbook_Open avec appui sur Shift. L'enregistrement me donne un nouvel argument:  
Workbooks.Open Filename:= "Classeur_Contenant_Workbook_open", _
        Editable:=True
 
Ensuite que l'on exécute l'instruction avec cet argument égal à true ou à false, dans tous les cas, la procédure Workbook_Open s'exécute.  
 
Et là, je ne comprends plus rien :(
 
Zbod préconise:

Citation :

Je voudrais juste qu'il l'ouvre en sélectionnant
"Désactiver les macros" : c'est possible ?


Cela me parait délicat, car si avant de lancer l'ouverture du fichier souhaité en désactivant les macros, on ne pourra plus utiliser celles de l'autre classeur, n'est-ce-pas?
 
Il me vient bien à l'idée une méthode bien lourde:
Au début de la macro Workbook-Open, faire un test pour savoir si le classeur qui doit lancer l'ouverture est lui-même ouvert, et dans ce cas, Exit Sub. Mais c'est pas très joli.
 
Je suis preneur de toute idée plus géniale ;)

Reply

Marsh Posté le 03-03-2003 à 22:06:42    

Ca y est, j'ai trouvé:
 
Application.EnableEvents = False
Workbooks.Open "C:\Temp\LeClasseurQuiContientWorkbook_Open.xls"
Application.EnableEvents = True
 
Merci au site:
 ttp://longre.free.fr/pages/prog/evenements.htm
(Paragraphe II.5)
 ;)

Reply

Marsh Posté le 07-05-2009 à 17:04:16    

Merci beaucoup!
mais en continuant sur le sujet est-il possible d'incrémenter la date du jour au classeur recherché?
j'essaye:
Application.EnableEvents = False  
Workbooks.Open "C:\Temp\LeClasseurQuiContientWorkbook_Open.xls" & Format(Date, dd_mm_yyyy)  
Application.EnableEvents = True
mais vous vous en doutez cela ne fonctionne pas.
avez vous quelque chose à me proposer?

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed