XL 2019 Incompréhension quant à l'instruction workbooks.close

escouger

XLDnaute Occasionnel
Bonsoir,
Je ne comprends pas et ne trouve pas de solution à une question apparemment simple.
Voyez le fichier joint CVS_Installer_test.xls
Ce fichier lit un fichier "D:\test000.xlsm" et le sauvegarde sous le nom "D:\test001.xlsm"
Puis il ferme "D:\test001.xlsm"
Après cette fermeture ce fichier reste affiché et je suis obligé de sortir en cliquant sur la croix en haut et à droite.
Je voudrais qu'après le fermeture il disparaisse de l'affichage.
J'ai essayé plein de trucs trouvés dans les forums mais rien ne fait comme je le souhaite.
Merci de vos avis.
 

Pièces jointes

  • test000.xlsm
    13 KB · Affichages: 8
  • Test001.xlsm
    13 KB · Affichages: 2
  • CVS_Installer_test.xls
    81 KB · Affichages: 7

escouger

XLDnaute Occasionnel
Bonjour,
Oui j'avais déjà essayé cela, mais cela ne change rien hélas.
Est-ce que le fait que "before close" et "auto_close" contiennent des instructions VBA pourraient être une cause de ce souci (même si je ne les ai pas recopié dans mes fichiers de test envoyés hier).
 

TooFatBoy

XLDnaute Barbatruc
Oui j'avais déjà essayé cela, mais cela ne change rien hélas.
Bizarre car chez moi ça résout le problème.

Est-ce que le fait que "before close" et "auto_close" contiennent des instructions VBA pourraient être une cause de ce souci (même si je ne les ai pas recopié dans mes fichiers de test envoyés hier).
Oui.
Mais il me semble pourtant avoir vu du code hier dans ces deux procédures.
 

escouger

XLDnaute Occasionnel
Bonsoir,
Dans le fichier complet figure effectivement une macro "auto_close" et une procédure "before close", mais le fichier de test que je vous ai envoyé n'en contenait pas.
D'ailleurs cela marche effectivement bien sur ce fichier de test.

C'est en répliquant cette modification (ActiveWorkbook.Close SaveChanges:=False) sur mon fichier complet (donc avec "auto_close" et "before close") que çà ne marche plus.
 

escouger

XLDnaute Occasionnel
J'ai contourné l'obstacle en identifiant le cas ou le fichier se ferme lorsqu'il a été ouvert depuis le programme principal (Cvs_installer). Ainsi les 2 procédures before close et auto_close sont sans effet car commencent par un jump Xxx . Xxx est en fin de procédure
Ca marche mais c'est bien peu élégant!
 

dysorthographie

XLDnaute Accro
Bonjour,
Il est toujours intéressant d'utiliser une variable object pour manipuler les classeurs plutôt que de faire confiance à des truc comme select, sélection et autres ActiveWorkbook!
Code:
dim Test001 as Workbook
Set Test001= Workbooks.open("E:\Test001.xlsm")
Test001.Close false
Set Test001= nothing
 

Statistiques des forums

Discussions
312 215
Messages
2 086 314
Membres
103 176
dernier inscrit
jean.yvesjean.yves