Hello à tous,

Je bosse sur une macro hostée sur un serveur un peu lent... donc il arrive qu'il m'affiche une erreur "1004" sur l'emplacement du fichier que le code doit ouvrir.

Le but est d'ouvrir le fichier sans que l'utilisateur n'est conscience que le réseau galère, donc sans que la fenêtre d'erreur 1004 apparaisse.

Cependant dans le "MyErrorHandler", lorsque je fais boucler la macro pour essayer d'ouvrir le "fichier_1" même avec le "On Error Resume Next", j'ai cette fenêtre d'erreur 1004 qui apparait

Dans l'attente de vos retours et surtout passez un bon samedi soir et week-end !

Un petit exemple pour que ce soir plus clair :

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
27
 
Sub exemple()
 
On Error GoTo MyErrorHandler
 
    fichier_1= "C:\zDocuments and Settings\stef\Bureau\err\fichier1.xls"   'je créer une erreur "1004" en mettant un chemin erroné -> ajout du "z" avant "Documents" 
15    Workbooks.Open (fichier_1)
 
Exit Sub
 
MyErrorHandler:
 
If Err.Number = 1004 And Erl = 15 Then 
    fichier1open = False
 
    For i = 1 To 20 'je fais une boucle car le réseau est lent, il se peut qu'il arrive ouvrir le fichier uniquement au bout de la 12éme tentative
        If fichier1open = False Then
            On Error Resume Next 'je mets cette instruction pour ne pas que la macro s’arrête et affiche le message d'erreur 1004
            Workbooks.Open (fichier_1) 'la fenêtré d'erreur 1004 apparait....
            Exit For
        End If
    Next i
    Resume Next
 
End If
 
End Sub