Bonjour à tous,
J’ai mis un fichier sur un réseau afin que plusieurs personnes puissent l’utiliser. Je ne l’ai pas partagé volontairement car sous Excell le partage engendre de nombreuses restrictions sur la manipulation du fichier. Ce fichier est en permanence ouvert sur un PC. J’aurais aimé que lorsqu’un utilisateur ouvre ce fichier sur son PC, un message donnent diverses indications (exemple : Ne pas traiter le dossier n° xxxx). En cherchant j’ai essayé ce bout de code mais cela ne fonctionne pas.
Dans un module :
Dans ThisWorkbook:
Je vous remercie par avance de votre aide
J’ai mis un fichier sur un réseau afin que plusieurs personnes puissent l’utiliser. Je ne l’ai pas partagé volontairement car sous Excell le partage engendre de nombreuses restrictions sur la manipulation du fichier. Ce fichier est en permanence ouvert sur un PC. J’aurais aimé que lorsqu’un utilisateur ouvre ce fichier sur son PC, un message donnent diverses indications (exemple : Ne pas traiter le dossier n° xxxx). En cherchant j’ai essayé ce bout de code mais cela ne fonctionne pas.
Dans un module :
Code:
Function LectureSeule(FileName As String) As Boolean
Dim Fs As Object, St As Integer
Set Fs = CreateObject("Scripting.FileSystemObject")
Set f = Fs.GetFile(FileName)
St = f.Attributes
If St = 1 Or St = 33 Then
LectureSeule = True
Else
LectureSeule = False
End If
End Function
Dans ThisWorkbook:
Code:
Private Sub Workbook_Open()
Application.ScreenUpdating = False
Dim sh As Worksheet
If LectureSeule(ActiveWorkbook.FullName) = True Then
MsgBox "Veuillez ne pas traiter le dossier xxx !", 48, "AVERTISEMENT"
End If
end sub