Lorsque tu ouvres ton classeur en VBA, tu as une propriété ReadOnly sur l'objet correspondant au classeur qui te permet de déterminer si tu l'as ouvert en lecture seule (ce qui est le cas si il est déjà ouvert).
Ex :
Set wks= Workbooks.Open(FullPathFile, False, False, , , , True, , , , False)
Application.DisplayAlerts = True
' Vérification de l'accès au fichier en écriture
If wks.ReadOnly Then
error = "Unable to open workbook in write mode. "
Application.DisplayAlerts = False
wks.Close False
Application.DisplayAlerts = True
Exit Sub
End If