Erreur 1004 avec macro pour ouvrir fichier excel.

Fermé
SunCanBurn Messages postés 6 Date d'inscription jeudi 19 janvier 2017 Statut Membre Dernière intervention 25 janvier 2017 - Modifié par pijaku le 19/01/2017 à 12:38
f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 - 25 janv. 2017 à 10:49
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 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 701
19 janv. 2017 à 12:03
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 jeudi 19 janvier 2017 Statut Membre Dernière intervention 25 janvier 2017
19 janv. 2017 à 12:29
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 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 701 > SunCanBurn Messages postés 6 Date d'inscription jeudi 19 janvier 2017 Statut Membre Dernière intervention 25 janvier 2017
19 janv. 2017 à 12:48
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 jeudi 19 janvier 2017 Statut Membre Dernière intervention 25 janvier 2017
19 janv. 2017 à 12:59
Mmmh très bien il va falloir que je retravaille tout cela dans ce cas.
0
SunCanBurn Messages postés 6 Date d'inscription jeudi 19 janvier 2017 Statut Membre Dernière intervention 25 janvier 2017 > f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024
19 janv. 2017 à 13:31
Si vous avez une solution différente à la mienne, je suis preneur.

Crdlt
0
f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 701 > SunCanBurn Messages postés 6 Date d'inscription jeudi 19 janvier 2017 Statut Membre Dernière intervention 25 janvier 2017
Modifié par f894009 le 19/01/2017 à 14:20
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