Vérifier si un classeur est ouvert (sur serveur protégé)

m@tix

XLDnaute Occasionnel
Bonjour,

Avec le code ci-dessous, je pensais pouvoir contrôler si le fichier ouvert par l'utilisateur est en cours de modification par une autre personne. Seulement, je m'aperçois que l'erreur 70 n'est jamais appelée, il s'agit en fait de l'erreur 52, qui correspond apparemment à un manque de droits. Le serveur (SharePoint) était protégé, on peut comprendre pourquoi cette erreur est retournée. Mais du coup, il m'est impossible avec ce code d'arriver à ce que je souhaite.. Peut-on y remédier ?

Merci d'avance.

Code:
Function CheckOpenedWorkbook(file As String) As Boolean

    Dim x As Integer
    
    On Error Resume Next
    x = FreeFile()
    
    Open file For Input Lock Read As x
    Close x
    
    If Err.Number = 0 Then CheckOpenedWorkbook = False
    If Err.Number = 70 Then CheckOpenedWorkbook = True
    
    On Error GoTo 0

End Function

---------------------------------------------------------------------------------------


Code:
If CheckOpenedWorkbook("https://***/fichier_partage.xlsm") Then
        MsgBox "The file is being used by another person, please try later."
        Exit Sub
Else
.....
 

Discussions similaires

Réponses
19
Affichages
2 K

Statistiques des forums

Discussions
312 095
Messages
2 085 249
Membres
102 836
dernier inscrit
Ali Belaachet