Bonjour,

J'ai créé la macro ci-dessous qui a pour but de fermer tous les fichiers Word encore ouvert sur un serveur.
J'ai créé une tâche batch planifié qui lance donc ce fichier tous les jours.
Quand je test manuellement c'est à dire j'ouvre un Word sur le serveur puis j'exécute ma tâche planifiée, la macro fait le travail.
En revanche en automatique lorsqu'un fichier reste réellement ouvert la nuit et que la tâche se lance il ne se passe rien. Même si je lance par la suite la tâche planifié manuellement.

La seule différence que je vois entre mon test et la partie automatique, c'est que le Word qui reste ouvert en entête il y a le nom du fichier puis entre croche [Mode comptatibilité]

Est-ce que cela peut venir de là ?

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
Private Sub Workbook_Open()
 
    Dim objWord As Object
    Dim blnHaveWorkObj As Boolean
 
    ' assume a Word object is there to be quit
    blnHaveWorkObj = True
 
    ' loop until no Word object available
    Do
        On Error Resume Next
        Set objWord = GetObject(, "Word.Application")
        If objWord Is Nothing Then
            ' quit loop
            blnHaveWorkObj = False
        Else
            ' quit Word
            objWord.Quit
            ' clean up
            Set objWord = Nothing
        End If
    Loop Until Not blnHaveWorkObj
 
Application.Wait Now + TimeValue("0:00:05")
 
Application.DisplayAlerts = False
Application.Quit
 
 
 
End Sub