Erreur 1004 avec macro pour ouvrir fichier excel.

SunCanBurn Messages postés 6 Date d'inscription   Statut Membre Dernière intervention   -  
f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Je rencontre un soucis avec une macro que j'ai trouvé et modifié afin qu'elle corresponde à mes besoins. Le plus étonnant, c'est que la modification a été un succès, elle a fonctionné.

Sauf que non, elle a fonctionné une fois et après quand je l'exécute à nouveau, j'ai une erreur 1004: fichier introuvable. vérifier l'orthographe du nom du classeur et la validité de l'emplacement.

Si une âme charitable veut bien me donner l'astuce, et m'expliquer le pourquoi du comment ça marche et après ça ne marche plus...

je vous copie-colle la partie incriminée.


ChDir "D:\123\ab"
    ClasseurRegional = Dir("D:\123\ab\*.xls")
    While Len(ClasseurRegional) > 0
        Workbooks.Open ClasseurRegional [[[<=== c'est là que ça ne va pas.]]]
        Range("A4:R4").Copy
        Workbooks("alpha.xlsm").Activate
        DebutNomFichier = ActiveSheet.UsedRange.Rows.Count + 1
        Range("A" & ActiveSheet.UsedRange.Rows.Count + 1).Select
        ActiveSheet.Paste
        Workbooks(ClasseurRegional).Close
        ClasseurRegional = Dir
    Wend


Merci pour votre retour.

Amicalement,

S
A voir également:

1 réponse

f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   1 713
 
Bonjour,

Je mets toujours le chemin du fichier, pas besoin du ChDir
Chemin = "D:\123\ab\"
ClasseurRegional = Dir(Chemin & "*.xls")
While ClasseurRegional <> ""
    Workbooks.Open Chemin & ClasseurRegional
    Range("A4:R4").Copy
    Workbooks("alpha.xlsm").Activate
    DebutNomFichier = ActiveSheet.UsedRange.Rows.Count + 1
    Range("A" & ActiveSheet.UsedRange.Rows.Count + 1).Select
    ActiveSheet.Paste
    Workbooks(ClasseurRegional).Close
    ClasseurRegional = Dir
Wend
0
SunCanBurn Messages postés 6 Date d'inscription   Statut Membre Dernière intervention  
 
Bonjour et merci de ton retour !

Je viens d'essayer ta méthode mais elle ne semble pas fonctionner. Aucune copie n'a lieu dans le fichier de destination et je n'observe aucun "ralentissement" du à l'ouverture/fermeture des fichiers Excels :/

Cordlt,

S
0
f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   1 713 > SunCanBurn Messages postés 6 Date d'inscription   Statut Membre Dernière intervention  
 
Re,
Je viens d'essayer ta méthode mais elle ne semble pas fonctionner
Ce n'est pas ma methode, mais la votre, je n'ai modifie que pour l'ouverture fichier,
0
SunCanBurn Messages postés 6 Date d'inscription   Statut Membre Dernière intervention  
 
Mmmh très bien il va falloir que je retravaille tout cela dans ce cas.
0
SunCanBurn Messages postés 6 Date d'inscription   Statut Membre Dernière intervention   > f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention  
 
Si vous avez une solution différente à la mienne, je suis preneur.

Crdlt
0
f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   1 713 > SunCanBurn Messages postés 6 Date d'inscription   Statut Membre Dernière intervention  
 
Re,
Oui, copie de plage sans ouvrir le classeur
Je vous fais ca
Suite:
Ou plutot regardez ceci et adaptez le a votre besoin, si vous n'y arrivez pas, je prendrai la suite
https://www.commentcamarche.net/faq/32961-vba-excel-lire-dans-un-classeur-ferme
0