VBA copie de fichier à fichier

  • Initiateur de la discussion Jeff
  • Date de début
J

Jeff

Guest
Voilà, je souhaite que ma macro ouvre chaque fichier excel d'un répertoire donné (myRep), copie l'ensemble des données (colonne 1 à 4) à partir de la ligne 2, et les colle les uns à la suite des autres dans le fichier principal (Prix_recus.xls)

J'ai abouti à ça:

myFile = ActiveWorkbook.Name
Workfile = Dir(myRep & '*.xls')
Dim plage As Range, ici As Range, cel As Range

Do While Workfile <> ''

Application.StatusBar = 'Traitement du fichier ' & Workfile
Workbooks.Open Filename:=myOrt & Workfile

I = Sheets('Feuil1').Range('A65536').End(xlUp).Row
'Plage source
Set plage = Sheets('Feuil1').Range('A2:A' & I)
'Plage de destination
Set ici = Workbooks('Prix_Recus.xls').Sheets('Feuil2').Range('A2')

For Each cel In plage.Offset(0, 4)
cel.EntireRow.Copy Destination:=ici
Set ici = ici.Offset(1, 0)
Next cel

ActiveWorkbook.Save: Windows(Workfile).Close
Windows(myFile).Activate
Workfile = Dir()

Loop

MsgBox ('Done')


Ca ne fonctionne pas, et je me tourne vers vos idées pour faire tourner tout ça correctement.

Merci par avance à tous,

Jeff
 

_Thierry

XLDnaute Barbatruc
Repose en paix
Bonsoir Jeff, le Forum

IL me semble que j'ai déjà vu ton problème sur ce Forum, mais je ne retrouve pas...

Pour l'instant c'est quoi au juste 'myOrt'

Ensuite quelle est la ligne qui plante si il y a un Bug ?

Ensuite pour que celà fonctionne il faut s'assurer que tous les classeurs traîtés contiennent bien une 'Feuil1' sinon...

Ensuite cette Ligne :
Set ici = Workbooks('Prix_Recus.xls').Sheets('Feuil2').Range('A2')
Va systématiquement écraser en 'A2' ce que tu reçois...

Ensuite cette Ligne :
Set ici = ici.Offset(1, 0)
Ne sert à rien en sortie de boucle puisque le Set de cet objet est refait par la ligne que je décris juste au dessus...

C'est tout ce que je peux faire sans voir le code complet, ni le contexte d'environnement... Mais c'est assez confus comme code... Dans l'ancien Forum j'ai fait pas mal de truc pour remonter des plages en boucles depuis différents classeurs et je ne m'y prenais pas du tout comme ça...

Pour conclure, ta démarche n'est pas vraiment XLD-Compliant, car en quelques sortes tu nous mets en face d'un méli-mélo de codes mis bout à bout en demandant de l'arranger, en plus sans préciser o&ugrave; ça ne passe pas... Ce qui est pratiquement plus compliqué que d'en refaire un nouveau...

Bon Week End
 

Discussions similaires

Réponses
2
Affichages
176
Réponses
2
Affichages
138

Statistiques des forums

Discussions
312 487
Messages
2 088 825
Membres
103 971
dernier inscrit
abdazee