Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2068 connectés 

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Fermer 2 fichiers par macro

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Fermer 2 fichiers par macro

n°1280475
zangel_xyz
Posté le 10-01-2006 à 14:56:48  profilanswer
 

Bonjour  
 
J'ai une macro dans le fichier fiche2.xls qui ferme le fichier fiche1.xls, mais dès que le fichier fiche1.xls se ferme, la macro ne continue pas, c'est-à-dire que le fichier fiche2.xls ne se ferme jamais.  
 
Voici mon code VBA  
Notez que mes valeurs ont été déclarées.  
Set bk1 = Workbooks("fiche1.XLS" )  
Set bk2 = Workbooks("fiche2.xls" )  
bk1.Close savechanges:=True  
bk2.Close savechanges:=True  
 
Qu'est-ce que je dois changer ou ajouter pour que la fiche2.xls se ferme après la fiche1.xls?  
 
Note: veuillez noter que la fonction workbook_open de fiche1.xls ouvre la fiche2.xls. J'ignore si cela peut changer quelque chose, mais je préfèrais le mentionner.  
 
Merci  
 
Zangel

mood
Publicité
Posté le 10-01-2006 à 14:56:48  profilanswer
 

n°1280481
Gusdabo
Posté le 10-01-2006 à 15:01:46  profilanswer
 

Bah chez moi ca fonctionne bien ton code...
 
Edit: pas fait gaffe: ta macro de départ qui a ouvert le fichier 2 à partir du 1 est encore en cours??
Ca peut être cela...

Message cité 1 fois
Message édité par Gusdabo le 10-01-2006 à 15:02:44
n°1280499
zangel_xyz
Posté le 10-01-2006 à 15:16:24  profilanswer
 

Gusdabo a écrit :

Bah chez moi ca fonctionne bien ton code...
 
Edit: pas fait gaffe: ta macro de départ qui a ouvert le fichier 2 à partir du 1 est encore en cours??
Ca peut être cela...


 
J'ai même ajouter à fiche1.xls dans workbook_beforeClose() de fermer la fiche2.xls, mais ça ne fonctionne pas non plus.
 
Quelqu'un a la solution à ce problème? Merci.

n°1280502
Gusdabo
Posté le 10-01-2006 à 15:19:36  profilanswer
 

Ta macro d'origine est terminée ou pas?

n°1280528
zangel_xyz
Posté le 10-01-2006 à 15:41:06  profilanswer
 

Gusdabo a écrit :

Ta macro d'origine est terminée ou pas?


 
Je ne suis pas sûre de bien te comprendre. Si tu parles de la macro workbook_open du fichier fiche1.xls, oui elle est terminée.
 
Il y a une chose que j'ai oublié de mentionné:
J'ai un bouton dans fiche1.xls qui lorsqu'on clique dessus appelle une macro de fiche2.xls pour éxécuter quelques opérations et quand le tout est terminé, c'est là que je demande à fermer les deux fichiers.
 
Une autre chose que j'aimerais c le code macro pour vérifier si un fichier est déjà ouvert et si c le cas, alors on ne le réouvre pas.
 
Merci

n°1280536
Gusdabo
Posté le 10-01-2006 à 15:48:51  profilanswer
 

pour savoir si fiche2 est déja ouvert, il faut qq chose comme:
 
 
let zz=0
for each wk in workbooks
    if wk.name = "fiche2.xls" then  
    let zz = 1
next
if zz=0 then workbooks.open("fiche2.xls" )
 
'suite de ton code et de tes traitements...
 
 
 
Ensuite, ce qu'il faut c'est que le code de fermeture soit dans ton fiche1, à la fin de la même macro qui a ouvert fiche2 (celle que tu as appelé avec ton bouton dans fiche1)
et tu ferme fiche2 en premier.
 
 
Je sais pas si je suis super clair??

Message cité 1 fois
Message édité par Gusdabo le 10-01-2006 à 15:50:34
n°1280567
zangel_xyz
Posté le 10-01-2006 à 16:08:47  profilanswer
 

Gusdabo
 
merci beaucoup pour ton aide. Je n'ai pas mes fichiers Excel avec moi, mais je vais essayer le tout ce soir. J'pense que j'ai trouvé la solution à mes problèmes de macros.
Encore une fois, merci.
 
Zangel
 

Gusdabo a écrit :

pour savoir si fiche2 est déja ouvert, il faut qq chose comme:
 
 
let zz=0
for each wk in workbooks
    if wk.name = "fiche2.xls" then  
    let zz = 1
next
if zz=0 then workbooks.open("fiche2.xls" )
 
'suite de ton code et de tes traitements...
 
 
 
Ensuite, ce qu'il faut c'est que le code de fermeture soit dans ton fiche1, à la fin de la même macro qui a ouvert fiche2 (celle que tu as appelé avec ton bouton dans fiche1)
et tu ferme fiche2 en premier.
 
 
Je sais pas si je suis super clair??



Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Fermer 2 fichiers par macro

 

Sujets relatifs
comparaisons de fichiers unixComment runner un macro automatiquement(Resolu)
copie de fichiers dans des repertoiresLister des fichiers et en supprimer certains !
[DOS] Transformer des noms de fichiers longs en court, impossible ?Partage de fichiers sécurisé (SSH ou SSL)
Autorisation de fermer une fenêtre inactive en javascript ?[resolu]declenche macro par touche clavier
[Résolu][Batch] Renommer des fichiersmacro sur page internet
Plus de sujets relatifs à : Fermer 2 fichiers par macro


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR