Sub nom_de_macro()
If IsFileOpen("\\chemin_réseau_du_fichier\tableau.xlsm") Then
MsgBox "Le fichier est ouvert par un autre utilisateur, ouverture impossible !"
Else
Workbooks.Open filename:="\\chemin_réseau_du_fichier\tableau.xlsm"
End If
End Sub
Function IsFileOpen(filename As String)
Dim filenum As Integer, errnum As Integer
On Error Resume Next
filenum = FreeFile()
Open filename For Input Lock Read As #filenum
Close filenum
errnum = Err
On Error GoTo 0
Select Case errnum
Case 0
IsFileOpen = False
Case 70
IsFileOpen = True
Case Else
Error errnum
End Select