M’enfin ?! Y’a un bug dans la matrice ? J’ai déjà vu ça quelque part Consolidation de plusieurs onglets dans un seul onglet
Enfin bref, bonjour @panda et bienvenue.
Oui, il est possible de regrouper vos onglets.
Avant de vous donner la solution, je me permets quelques remarques:
- pourquoi vous casser la tête avec autant d’onglets alors que vous indiquez déjà une colonne avec le nom de classe (qui est aussi celui de l’onglet) ? Un seul onglet suffirait, les filtres feront le reste, non ?
- j’espère que ce ne sont pas des vraies données qu’il y a dans votre fichier

(sinon à l’avenir, changer par du fake, c’est plus sécure
)
Enfin, voici le bout de code qui va fusionner vos onglets
Sub RestezGroupir() 'dans « Copie »
Dim Lg&, Sh As Worksheet, f As Worksheet
Set f = Sheets(« Copie »)
f.Range(« B2:AB » & f.[a65000].End(xlUp).Row).ClearContents 'efface Copie
For Each Sh In Worksheets
If Sh.Name <> f.Name And Sh.Name <> « Recettes » And Sh.Name <> « Dépenses » And Sh.Name <> « Base de données » And Sh.Name <> « Recherche » And Sh.Name <> « Param » Then 'Ici on exclut les onglets qu’on ne veut pas
Lg = Sh.Range(« a » & Rows.Count).End(xlUp).Row
Sh.Range(« C5:AB100 » & Lg).Copy Destination:= _
f.Range(« a » & Rows.Count).End(xlUp)(2)
End If
Next
End Sub
Pour ce faire:
- Créez un onglet « Copie »
- ALT+F11 dans votre fichier, puis Insertion → module
- Copier/coller le code ci-dessus, puis F5
- Il vous faudra rajouter vos intitulées de colonnes avec un bon vieux copier/coller la ligne (j’avais un peu la flemme de rajouter la ligne de code, dsl)
- On pourrait créer un bouton pour le faire à volonté.
Bonne continuation!