Re : Fermer une instance Excel masquée
Bonjour MJ13 et merci pour ce lien trés intéressant.
Sacré MJ, tu as décidément toujours un lien intéressant à balancer.
J'ai utilisé ton excellent code permettant de fermer IE.
Après adaptation, j'arrive à boucler sur toutes les instances Excel ouvertes.
L'embétant c'est que, dans la dernière boucle de ton code "objProcess" renvoi "EXCEL.EXE".
Donc deux solutions pour arriver à mes fins :
1) Trouver comment boucler sur les enfants d'objProcess, ce qui me permettrait de fermer Machin.xls
2) Trouver comment tester si objProcess est visible ou pas. Si il n'est pas visible, c'est un critère suffisant pour considérer qu'il s'agit bien de l'instance que j'avais ouverte et que je vais donc fermer. (j'ai bien essayé de tester objProcess.Visible mais bien évidemment, ça ne marche pas)
J'essaye de gratter un peu sur le net pour trouver des renseignements sur WMI Scripting Library mais je trouve pas grand chose d'intéressant.
Si quelqu'un a une idée, je suis preneur...
Edit : Merci Pierrot. J'ai déjà implanté une gestion d'erreur. L'embêtant c'est que, entre l'ouverture et la fermeture de l'instance masquée, j'ai des tonnes de procédures qui sont lancées. En fait mon fichier principal est énorme (30 userform, 650 procédures, 10 000 lignes de codes) donc difficile d'implanter une gestion d'erreur vraiment pertinente et 100% efficace dans tout ça. C'est pour ça qu'en cas de plantage, j'aurai aimé vérifier au redémarrage qu'une ancienne instance masquée n'était pas encore ouverte.