Compilation des données dans un classeur

  • Initiateur de la discussion Initiateur de la discussion Hugues
  • 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 !

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

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

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

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
 
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
 
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

- 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

Discussions similaires

Retour