Test présence fichier sur Sharepoint via VBA

Bonjour,

J'ai un macro VBA qui testait la présence ou non d'un fichier dans l'arborescence Windows : celle-ci fonctionnait parfaitement.

Aujourd'hui, mon entreprise est passée sur sharepoint et je ne réussis plus à faire ce test. Je vous montre le code que j'utilise que j'ai trouvé en partie sur internet.

Sub BOM_INITIALE()

'Récupération du nom du répertoire : je fait le test sur un fichier duquel j'extrais 1758

Repertoire = Mid(ActiveWorkbook.name, 2, 4)
' Repertoire = 1758

MsgBox Repertoire
'MsgBox Len(Repertoire)

'Création du chemin fichier sur le Sharepoint

Chemin = Lien vers le sharepoint que j'ai enlevé car je ne réussi pas à poster... j'ai enlevé https


'MsgBox Chemin

MonFichier = Chemin & Repertoire & "-CQF-BOM.xlsx"

'MsgBox MonFichier

'Vérification de la présence du fichier (voir Public function checkFile)

If checkFile(MonFichier) = True Then

MsgBox "Le fichier existe..."

Workbooks.Open (MonFichier)

Else

MsgBox "Le fichier n'existe pas..."

ActiveWorkbook.SaveAs Filename:=MonFichier

End If

End Sub

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

Public Function checkFile(MonFichier As String) As Boolean
Dim oHttpRequest As Object
Set oHttpRequest = CreateObject("MSXML2.XMLHTTP")
With oHttpRequest
.Open "GET", MonFichier, False
.setRequestHeader "Cache-Control", "no-cache"
.setRequestHeader "Pragma", "no-cache"
.setRequestHeader "If-Modified-Since", "Sat, 1 Jan 2000 00:00:00 GMT"
.Send
End With
If oHttpRequest.Status = 200 Then
checkFile = True
Else
checkFile = False
End If
End Function

Quand je fait le test directement, j'ai une erreur sur .Send quel que soit le cas : fichier présent ou non.

Si le fichier est présent sur le sharepoint, que je l'ouvre manuellement dans excel, la macro fonctionne. Si je supprime le fichier du sharepoint la macro fonctionne encore. C'est comme si un lien se créait...

Pouvez-vous m'aider là dessus ?

Rechercher des sujets similaires à "test presence fichier sharepoint via vba"