Bonjour,
Je dois réaliser en tant que mission de stage un outil qui sera hébergé sur un site internet géré avec SharePoint. L'outil est un fichier Excel exécutant du code Vba. Cet outil permet de sauvegarder puis utiliser des fichiers (sous format Word/Excel) sur SharePoint.

Tout cela marche bien. Sauf qu’au début je faisais les sauvegardes en local et une fois que j'ai mis en place tout le dispositif pour prendre en charge SharePoint (donc sauvegarde et chargement de fichier sur le serveur) divers complications sont arrivées. La plupart on été corrigée sauf une:

La méthode permettant de vérifier si un ficher existe ou pas (pour ensuite le créer ou le charger) ne fonctionne plus. Le programme ne digère plus le fameux Dir. Depuis j'ai utilisé FileExists mais celui-ci me dit tout le temps que mon fichier n'existe pas même quand il existe ... Puis j'ai trouvé une autre solution sur internet qui cette fois-ci fait le contraire, elle me dit tout le temps qu'il existe même quand c’est faux (vous trouverez au bas de ce poste le code source des deux dernière méthodes).

Bref après de longue recherche sur internet je n’ai pas trouvé de solution. J'ai décidé de me lancer dans la gestion des erreurs en me disant que s'il y a une erreur lors de l’ouverture du fichier c'est que le fichier n'existe pas.
Donc j'ai fais ça:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
On Error GoTo Erreur:
Set wb = Workbooks.Open(szFilePath)
...
...
...
Erreur:
...
Cependant mon problème est que l'Open génère un message d'erreur (même si l'exécution continu, j'ai "Impossible d'ouvrir "....""). Et vu que cette méthode est appelée plusieurs fois avec des chemins d'accès différent, j'ai parfois un enchaine ment d'une dizaine de message d'erreur!!

Ma question est donc comment faire pour "zapper" ce message d'erreur, ne pas l'afficher?



Si quelqu'un à une idée concernant le problème de la vérification de la disponibilité des fichiers, voici le code:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
Public Function SharePointFile(sFile As String) As Boolean
    Dim HTML As HTMLDocument
    Dim tHTML As HTMLDocument
 
    Set tHTML = New HTMLDocument
    Set HTML = tHTML.createDocumentFromUrl(sFile, vbNullString)
 
    Do While HTML.readyState <> "complete"
        DoEvents
    Loop
 
    If InStr(LCase(HTML.Title), "not found") Then
        SharePointFile = False
    Else
        SharePointFile = True
    End If
 
    Set HTML = Nothing
    Set tHTML = Nothing
''''''''''''''''''''''''''''''''''''''''''''''''''''''DEUXIEME METHODE
'    Dim fso As Object
'    Set fso = CreateObject("Scripting.FileSystemObject")
'    If fso.FileExists(sFile) Then SharePointFile = True
''    If fso.FileExists("https://village.axa-fr.intraxa/AXA-Ent/IARD/IDF/PrAuto/CRT/GestConservation/DB/3600016198.xls") Then SharePointFile = True
'''''''''''''''''''''''''''''''''''''''''
End Function

Merci!