Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Macro qui ignore un On error resume next sur un réseau qui fonctionne en local

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Xlcium

XLDnaute Nouveau
Bonjour,

Je vous fais part d'une bizarrerie.

En local (sous c:\mes documents) la macro ci dessous s'exécute très bien, elle fait ce qu'on lui demande, en somme elle va lire le contenu d'un dossier et copie le contenu de fichiers excel d'un autre dossier dans un seul fichier excel récap.

Lorsque l'on essaye de faire tourner cette macro sur un réseau, à chaque erreur (à chaque fichier excel non trouvé) la macro bloque à l'entré du If Err.Number = 1004 Then, et ne fait que d'afficher des fenêtres pop up, en lieu et place de noter le nom du fichier incriminé...

Bref, j'ai déjà passé de longues heures sur l'analyse du code, je ne trouve pas...

Pour information, je n'ai fais que de relire ce code, je n'en suis pas l'auteur (qui n'est plus joignable d'ailleurs).

Par avance, merci pour vos retours et analyse sur cette macro.

Cordialement,


 
Re : Macro qui ignore un On error resume next sur un réseau qui fonctionne en local

Bonjour,
Non testé
Peut être une solution si N° est différent de 1004
Si erreur alors on efface l'erreur avant de continuer avec la boucle Wend7

'si un num de cb n'est pas trouvé son numero est reporté sur l'onglet anomalies
'If Err.Number = 1004 Then
' Sheets("Anomalies").Select

If Err>0 Then
Err.Clear
Sheets("Anomalies").Select

Bruno
 
Re : Macro qui ignore un On error resume next sur un réseau qui fonctionne en local

Bonsoir le fil, bonsoir le forum,

Je plussoie Bruno... Peut-être aussi rajouter l'annulation de la gestion des erreurs :
Code:
End If
On Error GoTo 0
Wend
 
Re : Macro qui ignore un On error resume next sur un réseau qui fonctionne en local

Bonjour,

J'ai essayé l'une puis l'autre des solutions, la combinaison des deux...rien n'y fait, j'ai toujours le message ci dessous lorsque la macro entre dans la boucle.
C'est un message par fichier non trouvé...

J'ai regardé les propriétés du dossier d'écriture de la macro, les accès sont OK.


Merci d'avance pour vos autres pistes...
 

Pièces jointes

  • Copie erreur.jpg
    13.4 KB · Affichages: 45
Re : Macro qui ignore un On error resume next sur un réseau qui fonctionne en local

Cela ne ressemble pas à une erreur mais à un avertissement!
Donc peut être neutraliser les messages par:

Application.DisplayAlerts = False
Workbooks.Open Filename:=FNumCB
Application.DisplayAlerts = True

Bruno
 
Re : Macro qui ignore un On error resume next sur un réseau qui fonctionne en local

Merci Bruno alias youky !

Alors maintenant le truc c'est que la macro ne fait que de rester dans la boucle du IF, en gros elle ignore la présence de fichiers excel dans le répertoire de lecture...si quelqu'un peut essayer de me dire d'où ça peut venir...

Merci beaucoup !

 
Re : Macro qui ignore un On error resume next sur un réseau qui fonctionne en local

Oui car tu n'as pas mis le Err.Clear pour effacer l'erreur.(je l'ai mis dans cette macro)
Petit ttruc supplémentaire le On Errorresume next n'a pas besoin d'être dans une boucle et répété

Donc on le place en 1er et on le supprime dans la boucle
ce qui donne:
Code:
            On Error Resume Next
While cpt < NbCB
            cpt = cpt + 1
            Windows(Fict).Activate
            Sheets("PGF").Select
            ActiveCell.Offset(1, 0).Range("A1").Select
            NumCB = ActiveCell
            FNumCB = Chem & "\" & "CB" & NumCB
            FNumCB1 = "CB" & NumCB & ".xls"

            Application.DisplayAlerts = False                       
            Workbooks.Open Filename:=FNumCB                         
            Application.DisplayAlerts = True


    'si un num de cb n'est pas trouvé son numero est reporté sur l'onglet anomalies
            If Err.Number <> 0 Then
             Err.Clear
            Sheets("Anomalies").Select
            ActiveCell.Offset(1, 0).Range("A1").Select
            ActiveCell = FNumCB

            Else
                Sheets(1).Select
                Range("A13:T57").Copy
                Windows(FRecapCAP).Activate
                Selection.End(xlDown).Select
                ActiveCell.Offset(1, 0).Range("A1").PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
                False, Transpose:=False
                Application.CutCopyMode = False
                Windows(FNumCB1).Activate

                ActiveWorkbook.Close
            End If

        Wend

Bruno
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
7
Affichages
2 K
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…