fermer un fichier word si il est ouvert

marie49

XLDnaute Occasionnel
Bonjour,

Je cherche et je ne trouve pas... Donc, je fais appel au forum...

Lors de mon publipostage, je souhaite fermer un fichier word si il est déjà ouvert.

J'ai trouvé ceci sur internet
Code:
Function ControleSiDocumentWordOuvert(FicWord) As Boolean
Dim Appli As Word.Application
Dim WordDoc As Word.Document
'testé avec Excel97 et Excel2002
'nécéssite d'activer la reference Microsoft word xx.x 0bject Library
'On Error Resume Next
Set Appli = GetObject(, "word.application")
Appli.Documents(FicWord).Activate
If Err = True Then
ControleSiDocumentWordOuvert = False
Else
ControleSiDocumentWordOuvert = True
Appli.Documents(FicWord).Close 'fermeture application Word
End If
End Function

Cela ne fonctionne pas. Mon fichier ne se ferme pas. Il faut savoir que je peux avoir plusieurs application word ouverte en même temps. Je me demande si il ne teste que la dernière application active...

Quelqu'un a t-il une idée? merci

marie
 

MichelXld

XLDnaute Barbatruc
Re : fermer un fichier word si il est ouvert

Bonsoir

Tu peux tester cette autre procédure :

Code:
Sub ControleSiDocumentWordOuvert()
    Dim Appli As Word.Application
    Dim WordDoc As Word.Document
    
    'nécéssite d'activer la reference Microsoft word xx.x 0bject Library
    On Error Resume Next
    Set Appli = GetObject(, "Word.Application")
    Set WordDoc = Appli.Documents("C:\Documents and Settings\dossier\monFichier.doc")
    On Error GoTo 0
    
    If WordDoc Is Nothing Then
        MsgBox "Le document est fermé"
        Else
        MsgBox "Le document est ouvert"
        WordDoc.Close 'fermeture doc Word
    End If
End Sub

bonne soirée
michel
 

Discussions similaires

Statistiques des forums

Discussions
312 749
Messages
2 091 642
Membres
105 010
dernier inscrit
sam333