copier toutes les feuilles d'un ensemble de fichiers Excel

  • Initiateur de la discussion Initiateur de la discussion dimitri.evrard24
  • Date de début Date de début

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 !

D

dimitri.evrard24

Guest
Bonjour,
J'essaie de copier toutes les feuilles d'un ensemble de fichiers Excel se trouvant dans un même répertoire, dans un fichier Excel de compilation contenant le code suivant.
Malheureument il ne fonctionne pas comme prévu.
Quelqu'un pourrait-il m'aider ?
Merci !
Dimitri


Sub Copier()

Chemin = "C:\...\" 'Répertoire où se trouvent les Excel à compiler
Fichiersource = Dir(Chemin & "*.xlsx") ' Premier fichier à compiler
Fichiercible = ThisWorkbook.Name ' Fichier de compilation

Do While Fichiersource <> ""

Workbooks(Fichiersource).Activate

For Each Feuille In Workbooks(Fichiersource).Worksheets

Feuille.Copy After:=Workbooks(Fichiercible).Sheets(1)

Next Feuille

Fichiersource = Dir ' Fichier suivant
Loop

End Sub
 
Re : copier toutes les feuilles d'un ensemble de fichiers Excel

Bonjour
voir ce code publié la semaine dernière sur ce forum
Sub Compilerfichiers()
'compilation de datas tirées de plusieurs classeurs à inscrire dans une seule feuille
'les unes à la suite des autres.Tu pourras l'adapter à ton besoin
Dim Temp As String, Group$
Dim Cible, Rng As Range
Dim Lrw As Long, Cf&
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
Application.DisplayAlerts = False
Group = ActiveWorkbook.Name
Temp = Dir(ActiveWorkbook.Path & "\*.xls")
Do While Temp <> ""
Lrw = ActiveSheet.Range("A65536").End(xlUp).Row + 1
Set Cible = Feuil1.Range("A" & CStr(Lrw))
If Temp <> Group Then
Workbooks.Open ActiveWorkbook.Path & "\" & Temp
Set Rng = Workbooks(Temp).Sheets(1).Range("A1").CurrentRegion
Lrw = Feuil1.Range("A65536").End(xlUp).Row + 1
Rng.Copy Cible
Workbooks(Temp).Close
End If
Temp = Dir
Cf = Cf + 1
Set Rng = Nothing: Set Cible = Nothing
Exit Do
Loop
Application.Goto Reference:=Feuil1.Cells(2, 1), scroll:=False
Application.DisplayAlerts = True
Application.Calculation = xlCalculationAutomatic
End Sub
Cordialement
Flyonets
 
Re : copier toutes les feuilles d'un ensemble de fichiers Excel

Cordialement
Flyonets
Bonjour,

Je ne suis pas assez doué pour comprendre ce code 🙁 mais en le copiant je me rends compte qu'il ne fait pas vraiment ce que je veux car il faudrait que je copie toutes les feuilles de tous les fichiers et là il ne m'a copié que une seule feuille. A moins que je n'ai pas correctement copié ... ?

Merci.
dimitri
 
Re : copier toutes les feuilles d'un ensemble de fichiers Excel

Bonjour Dimitri le forum
bien que pas trés d'accord avec ton multipostage sur divers forums non annoncé, voilà un fichier en retour
tu le copies dans le dossier que tu souhaites traiter et tu l'ouvres et ensuite tu cliques sur le bouton copier
a+
papou😱
 

Pièces jointes

Dernière édition:
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
3
Affichages
879
M
Réponses
3
Affichages
2 K
M
Retour