comment vérifier si un fichie word est ouvert et le fermer

Le
Nicolas
bonsoir,
ci-dessous le code que j'utilise sur un click d'un bouton "visualiser
fichier word" pour ouvrir un fichier word et modifier un signet
Set fs = CreateObject("Scripting.FileSystemObject")
Set appword = New Word.Application
Set Feuille = appword.Documents.Open("D:FileWord.doc")
appword.Selection.Goto wdGoToBookmark, Name:="DocAR":
appword.Selection.TypeText ("Essai")
appword.ActiveDocument.SaveAs FileName:="D:FileWord.doc"
appword.Visible = True

lorsque le fichier word est ouvert, l'utilisateur peut, sans le fermer,
revenir sur access puis cliquer sur le bouton "visualiser fichier Word"
dans ce cas une erreur se produit.

je voudrait au moment du click sur le bouton, vérifier si le fichier
"FileWord.doc" est ouvert si oui le fermer puis continuer la procédure
merci de votre réponse
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
FFO
Le #21430031
Salut à toi

Peut être ceci peut faire l'affaire :

Dans module global
Function FileLocked(strFileName As String) As Boolean
On Error Resume Next
Open strFileName For Binary Access Read Write Lock Read Write As #1
Close #1
If Err.Number <> 0 Then
FileLocked = True
Err.Clear
End If
End Function

Dans module d’exécution
Public Function Fichier() As Boolean
Dim strFileName As String
strFileName = "E:CIB RL.doc"
' Appel de la function FileLocKed pour tester l'état du fichier.
If FileLocked(strFileName) Then
MsgBox ("Fichier ouvert")
Exit Function
End If

End Function

sinon tu peux insérer cette ligne dans ton code :

on Error Resume next

Ainsi :

Set fs = CreateObject("Scripting.FileSystemObject")
Set appword = New Word.Application
On Error Resume next
Set Feuille = appword.Documents.Open("D:FileWord.doc")
appword.Selection.Goto wdGoToBookmark, Name:="DocAR":
appword.Selection.TypeText ("Essai")
appword.ActiveDocument.SaveAs FileName:="D:FileWord.doc"
appword.Visible = True

A toi de choisir !!!!!
Nicolas
Le #21434521
bonsoir FFO merci de ta réponse ;-)


FFO a écrit :
Salut à toi

Peut être ceci peut faire l'affaire :

Dans module global
Function FileLocked(strFileName As String) As Boolean
On Error Resume Next
Open strFileName For Binary Access Read Write Lock Read Write As #1
Close #1
If Err.Number <> 0 Then
FileLocked = True
Err.Clear
End If
End Function

Dans module d’exécution
Public Function Fichier() As Boolean
Dim strFileName As String
strFileName = "E:CIB RL.doc"
' Appel de la function FileLocKed pour tester l'état du fichier.
If FileLocked(strFileName) Then
MsgBox ("Fichier ouvert")
Exit Function
End If

End Function

sinon tu peux insérer cette ligne dans ton code :

on Error Resume next

Ainsi :

Set fs = CreateObject("Scripting.FileSystemObject")
Set appword = New Word.Application
On Error Resume next
Set Feuille = appword.Documents.Open("D:FileWord.doc")
appword.Selection.Goto wdGoToBookmark, Name:="DocAR":
appword.Selection.TypeText ("Essai")
appword.ActiveDocument.SaveAs FileName:="D:FileWord.doc"
appword.Visible = True

A toi de choisir !!!!!

Publicité
Poster une réponse
Anonyme