Bonjour,

Je dispose de plusieurs fichiers Excel ayant la même structure : un nombre d'onglet (variable) et sur chacun d'entre eux un tableau de la même forme mais avec un nombre de lignes variable. Je dois regrouper tous ces tableaux dans un fichier Excel récapitulatif.

Voici mon code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
 
Sub CreationSynthese()
 
Dim Ws As Worksheet
 
    ' Parcours de tous les fichiers
    ' -----------------------------
 
    ChDir "C:\Users\toto\Documents\Volumes" 'Placement dans le bon répertoire
    LesFichiers = Dir("C:\Users\toto\Documents\Volumes\*.xls") 'Récupère les fichiers
 
 
    While Len(LesFichiers) > 0
        Workbooks.Open LesFichiers
        For Each Ws In ThisWorkbook.Worksheets
            AvantDerniereLigne = ActiveSheet.UsedRange.Rows.Count
            Range("A14:X" & AvantDerniereLigne).Copy
            Workbooks("Synthèse.xlsm").Activate
            DebutFichier = ActiveSheet.UsedRange.Rows.Count + 1
              Range("B" & DebutFichier & ":X" & AvantDerniereLigne).Select
            ActiveSheet.Paste
            Application.CutCopyMode = False
         Next Ws
            Workbooks(LesFichiers).Close
            LesFichiers = Dir 'Passage au fichier suivant
    Wend
 
End Sub
Seulement lorsque j'exécute ce programme, l'erreur suivante apparait :
Erreur d'exécution 1004 : impossible de coller les informations car les zones Copier et de collage sont de forme et de taille différentes.

Cette erreur doit être due à la ligne :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
Range("B" & DebutFichier & ":X" & DebutFichier).Select
Je ne sais pas comment déclarer la plage dans laquelle je veux copier mes données autrement de façon à ne plus être confrontée à cette erreur.
Si quelqu'un a une idée qui pourrait me faire avancer, je l'étudierais avec plaisir.

Merci de votre aide !