Bonjour tout le monde !!

Voilà, je créé 99 fichiers PDF avec une seule macro ce qui fait que tous les environs 20 PDF il faut que j'en ferme quelques uns à la main pour que les autres puissent se créer. Il faudrait donc que je ferme les PDF au fur et à mesure.

Après quelques recherches sur le net j'ai trouvé ce code qui fonctionnait avant (car je me souviens m'en être déjà servie) mais qui maintenant bug.

Le code est le suivant :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
Sub Fermer_Un_Programme(Prog As String)
Dim StrComputer As String, objWMIService As Object
StrComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & StrComputer & "\root\cimv2")
Set colProcessList = objWMIService.ExecQuery _
("Select * from Win32_Process Where Name = '" & Prog & "'")
For Each objProcess In colProcessList
objProcess.Terminate
Next
End Sub
Et il bug à ce niveau là :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & StrComputer & "\root\cimv2")
J'ai beau essayer de comprendre, je ne vois pas d'où ça vient...

Auriez-vous une petite idée ou un autre code qui fonctionne ?

Merci.