Tu peux utiliser cette fonction qui renvoie vrai ou faux ( le nom du fichier doit être bien sûr fourni avec le chemin complet)
Function IsWorkBookOpenForWrite(ByVal nom_fichier As String) As Boolean
Dim no_fichier As Long
On Error Resume Next
no_fichier = FreeFile()
Open nom_fichier For Binary Access Read Lock Read Write As #no_fichier
If Err.Number = 0 Then IsWorkBookOpenForWrite = False _
Else IsWorkBookOpenForWrite = True
Close no_fichier
End Function
Merci pour ta réponse mais d'après ce que je comprend ta macro va fermer automatiquement le fichier ouvert. En revanche j'ai besoin que lorsque j'active ma "copie" d'un fichier à l'autre. Il m'indique avec une alerte (Msgbox) que le fichier est déjà ouvert, si non la copie se fait sans aucun soucis.