VBA Fermer plusieurs applications EXCEL en cascade (taskkill?)
VBA Fermer plusieurs applications EXCEL en cascade (taskkill?) - VB/VBA/VBS - Programmation
Sujets relatifs:
Leave a Replay
Make sure you enter the(*)required information where indicate.HTML code is not allowed
Marsh Posté le 25-11-2010 à 09:04:57
Bonjour,
J'ai fragmenté en deux parties indépendantes (A1 et A2) une application VBA Excel (formulaires, db Access) que je trouvais trop volumineuse.
Chacune des deux applications dispose entre autre de deux boutons de commande : un pour se terminer et un autre pour lancer l'autre application.
Lorsque le lance directement une application (A1 ou A2) et que je clique sur le bouton d'arrêt tout se passe bien, il n'y a plus aucun process Excel d'actif.
Lorsque je lance A2 à partir de A1 et que je clique sur le bouton d'arrêt de A2, A2 s'arrête bien mais il reste un process Excel actif.
Comment arrêter proprement (complètement) excel dans tous les cas de figure ?
Petites infos complémentaires:
lorsque je lance A1 j'ai un seul process actif, puis lorsque je lance A2 à partir d'A1 je n'ai toujours qu'un seul process actif, mais lorsque je tue le process Excel (Taskkill) dans l'appli A2, elle se termine bien mais le process Excess reste actif, comme s'il était lié à la première application A1.
code pour lancer A2 depuis A1
Set MyApp = GetObject(, "Excel.Application" )
Unload Userform0 ' userform principal
Workbooks.Open FileName:=ThisWorkbook.Path & "\A2.xls"
MyApp.Quit
Err.Clear
Codes pour quitter A2 (j'ai tout essayé à la queue leu leu )
VBA.Interaction.Shell ("TASKKILL /F /IM excel.exe" )
ExcelKill = "TASKKILL /F /IM Excel.exe"
Shell ExcelKill, vbHide
ExcelKill = "TSKILL /F /IM Excel.exe"
Shell ExcelKill, vbHide
MyApp.Quit
DoEvents
Set MyApp = Nothing
Des idées de solution ?
Message édité par edma le 25-11-2010 à 22:28:43