Fichier partagé déjà ouvert ?
Cette fonction cherche si un classeur est ouvert. Elle renvoie vrai si c'est le cas, faux si le classeur est fermé. Si l'accès au classeur est impossible, cela produit une erreur qui est gérée par la macro.
Function IsFileOpen(filename As String) 'auteur inconnu, mpep Dim filenum As Integer, errnum As Integer On Error Resume Next ' Arrête la gestion d'erreur. filenum = FreeFile() ' récupère un numéro de fichier libre. 'tentative pour ouvrir un fichier Open filename For Input Lock Read As #filenum Close filenum ' ferme le fichier. errnum = Err ' Sauvegarde du N° de l'erreur qui s'est produite. On Error GoTo 0 ' Reprise de la gestion d'erreur. 'Détermine la nature de l'erreur qui s'est produite. Select Case errnum ' Pas d'erreur. ' Le fichier n'est pas déjà ouvert par un autre utilisateur. Case 0 IsFileOpen = False ' Gestion de l'erreur "autorisation refusée" ' Le fichier est déjà ouvert par un autre utilisateur Case 70 IsFileOpen = True ' Autre type d'erreur Case Else Error errnum End Select End Function
Auteur : Frédéric Sigonneau
Mots clefs associés à cette page : erreur, ouvrir, réseau, partager
- Vous devez vous identifier ou créer un compte pour écrire des commentaires
