Compilation des données dans un classeur

Hugues

XLDnaute Impliqué
Bonjour,

Je souhaiterais, au sein d'un classeur, compiler toutes les données contenues dans chaque feuille dans une seule feuille via un bouton de commande.

Je n'arrive pas à rédiger en VBA une boucle disant de prendre une feuille aprés l'autre et de coller les données sur la premiére feuille du classeur nommée conso.

Merci par avance pour votre aide trés précieuse,

Hugues
 

Pièces jointes

  • compilation_données_classeur.xls
    22.5 KB · Affichages: 36
  • compilation_données_classeur.xls
    22.5 KB · Affichages: 37
  • compilation_données_classeur.xls
    22.5 KB · Affichages: 37

JHA

XLDnaute Barbatruc
Re : Compilation des données dans un classeur

Bonjour à tous,

Je suis assez nul en macro mais ci-joint un exemple du forum adapté à ton fichier

JHA
 

Pièces jointes

  • compilation_données_classeur.xls
    47.5 KB · Affichages: 54
  • compilation_données_classeur.xls
    47.5 KB · Affichages: 54
  • compilation_données_classeur.xls
    47.5 KB · Affichages: 50

Hugues

XLDnaute Impliqué
Re : Compilation des données dans un classeur

Bonjours à tout le Forum,

Merci pour la réponse.
J'ai travaillé mon projet.
je souhaiterais une variante :
la macro commande puisse gérer toutes les feuilles à l'exception du sommaire.
En cas de rajout de feuille, ce rajout puisse être géré automatiquement sans avoir à modifier la commande


Merci par avance,

Hugues
 

Pièces jointes

  • compilation_données_classeur2.xls
    59 KB · Affichages: 51

Hugues

XLDnaute Impliqué
Re : Compilation des données dans un classeur

Bonjour,
Je reviens vers vous afin de savoir si la fonction for each, peut prendre en compte seulement une partie des feuilles dans le classeur.
Je souhaiterais gérer toutes les feuilles à l'exception de celle dénommée "sommaire".

Merci pour votre réponse.

Hugues
 

tototiti2008

XLDnaute Barbatruc
Re : Compilation des données dans un classeur

Bonjour Hugues, Bonjour JHA :)

Sur le principe, For Each parcourt tous les objets, il faut ajouter un test dans la boucle pour exclure ceux qui ne doivent pas être traités

genre

Code:
For each Ws in thisworkbook.worksheets
if Ws.Name <> "Sommaire" then
'traitement
end if
Next
 

Hugues

XLDnaute Impliqué
Re : Compilation des données dans un classeur

Bonjour Le Forum,
Bonjour Tototiti,

J'ai un souci avec le code.

Ci joint la rédaction de la procédure :

Private Sub CommandButton1_Click()


' Effacement des données de la feuille conso avant réimportation des données
Sheets("conso").[A1].CurrentRegion.Offset(1, 0).ClearContents

' Récupération des données sur les différentes feuilles du classeur, sauf la feuille sommaire
For Each s In ThisWorkbook.Worksheets
If s.Name <> "Sommaire" Then
Nlig = Sheets(s).[A65536].End(xlUp).Row
Ncol = Sheets(s).[A1].CurrentRegion.Columns.Count
'MsgBox (Sheets(s).Name & " ==> Nbre ligne = " & Nlig & " ; Nbre colonnes = " & Ncol)
Sheets("conso").Range("A65536").End(xlUp).Offset(1, 0).Resize(Nlig, Ncol).Value = Sheets(s).[A2].Resize(Nlig, Ncol).Value

End If
Next

' Message de fin
Message = "Importation des données terminée"
Message = Message & vbNewLine & vbNewLine
Message = Message & "Vous pouvez consulter la feuille conso "

boite = MsgBox(Message, 64, "IMPORTATION")


End Sub

Merci pour l'aide,
Hugues
 

Pièces jointes

  • compilation_données_classeur3.xls
    62.5 KB · Affichages: 42
  • compilation_données_classeur3.xls
    62.5 KB · Affichages: 36
  • compilation_données_classeur3.xls
    62.5 KB · Affichages: 38

Discussions similaires

Statistiques des forums

Discussions
312 228
Messages
2 086 421
Membres
103 205
dernier inscrit
zch