Macro pour Consolider tous les classeurs d'un répertoire

cheikh

XLDnaute Nouveau
Bonjour,
J'ai un macro qui fait l'importation de tous les oglets d'un classeur qui se trouvent dans le même répertoire que lui.
9a fonctionne bien sauf qu'il les renomme en les numérotant à partir de 1 et moi je veux les importer sans changer leur noms.
Merci d'avance.


HTML:
Sub consolide()
  ChDir ActiveWorkbook.Path
  Set classeurMaitre = ActiveWorkbook
  sup
  compteur = 1
  nf = Dir("*.xl*")
  Do While nf <> ""
    If nf <> classeurMaitre.Name Then
      Workbooks.Open Filename:=nf
      For k = 1 To Sheets.Count
        Sheets(k).Copy After:=classeurMaitre.Sheets(classeurMaitre.Sheets.Count)
        classeurMaitre.Sheets(classeurMaitre.Sheets.Count).Name = "" & compteur
        compteur = compteur + 1
      Next k
      Workbooks(nf).Close False
    End If
    nf = Dir
  Loop
End Sub
 

Staple1600

XLDnaute Barbatruc
Re : Macro pour Consolider tous les classeurs d'un répertoire

Bonjour à tous

cheikh (Bienvenue sur le forum)
Cela fonctionne bien sauf qu'il les renomme en les numérotant à partir de 1 et moi je veux les importer sans changer leur noms.
Il suffit pour cela de commenter ou supprimer une ligne dans ta macro :rolleyes:
Code VBA:
Sub consolide()
ChDir ActiveWorkbook.Path
Set classeurMaitre = ActiveWorkbook
sup
compteur = 1
nf = Dir("*.xl*")
Do While nf <> ""
If nf <> classeurMaitre.Name Then
Workbooks.Open Filename:=nf
For k = 1 To Sheets.Count
Sheets(k).Copy After:=classeurMaitre.Sheets(classeurMaitre.Sheets.Count)
'classeurMaitre.Sheets(classeurMaitre.Sheets.Count).Name = "" & compteur
compteur = compteur + 1
Next k
Workbooks(nf).Close False
End If
nf = Dir
Loop
End Sub

NB: Dans ce cas, ta variable compteur ne sert plus à rien.

Tu peux donc supprimer les lignes de code qui l'utilisent.
 
Dernière édition:

angoul

XLDnaute Impliqué
Re : Macro pour Consolider tous les classeurs d'un répertoire

j'ai besoin d'un conseil sur cette macro, j'ai donc mes 88 fichiers dans le meme dossier
je lance la macro et au bout d'un moment, il me dit erreur 1004
excel de parvient pas a inserer les feuilles dans le classeur de destination, car il contient moins de ligne et de colonne que le classeur source.

j'ai environ 15000ligne total dans mon fichiers et une fois la macro lancer il m'en donne de 12000
merci de votre aide
 

Roland_M

XLDnaute Barbatruc
Re : Macro pour Consolider tous les classeurs d'un répertoire

bonjour,

...
excel de parvient pas a insérer les feuilles dans le classeur de destination, car il contient moins de ligne et de colonne que le classeur source.

je pense que cette erreur vient des classeurs de version Excel antérieur à 2007 (exemple 2003)
xls et xslx ou xlsm, dont le nombre de lignes est totalement différent !
 

Discussions similaires

Statistiques des forums

Discussions
312 843
Messages
2 092 758
Membres
105 526
dernier inscrit
Hiro