comment vérifier si un fichie word est ouvert et le fermer
2 réponses
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
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
FFO
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 !!!!!
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
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
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 !!!!!
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
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