Grouper par mois

Bonjour à vous,

Me voici avec une nouvelle colle !

Je souhaite, dans un fichier à la semaine, regrouper et masquer les colonnes de chaque mois ensemble en gardant que la dernière colonne du mois visible (car il y a un total des commandes des semaines du mois dans celle-ci).

Cela me permettra d'avoir une visualisation globale au mois et entrer au détail à la semaine quand je le souhaite.

Mon soucis c'est que je ne sais pas comment regrouper des colonnes via Macro.

Le nombre de colonnes à regrouper est variable.

J'ai également un premier regroupement des colonnes C à I que je souhaite avoir tout le temps.

J'ai besoin d'automatiser ce principe car quand je vais changer de mois je vais décaler toutes mes colonnes et donc devoir refaire intégralement les regroupements (d'où mon besoin d'une macro, sinon je le ferais à la main une bonne fois pour toute).

Comme un bon fichier exemple vaut mieux que 1000 mots je vous en joint un ici qui montre mon tableau à date (onglet 1), et le tableau avec les regroupements souhaités en onglet 2. Toutes les données ici sont à plat mais en réalité ce sont des formules etc.

Merci d'avance de votre aide !

8exemple.xlsx (24.01 Ko)

Bonjour SoCRacK

SI j'ai bien compris, le regroupement peut se faire avec ce code

Sub Regroupement()
  Dim Col As Long, dCol As Long
  Dim FirstCol As Long
  ' Dernière colonne de la feuille
  dCol = Cells(5, Columns.Count).End(xlToLeft).Column
  ' Première colonne à regrouper
  FirstCol = 15
  ' Parcourir les colonnes
  For Col = 15 To dCol
    ' Vérifier si le mois de la cellule suivante est différent
    If Cells(3, Col + 1) <> Cells(3, Col) Then
      ' Si non, regrouper les colonnes avant celle du total
      Range(Cells(1, FirstCol), Cells(1, Col - 1)).EntireColumn.Group
      ' Première colonne à regrouper
      FirstCol = Col + 1
    End If
  Next Col
End Sub

@+

Bonjour Bruno, c'est d'une simplicité effarante avec ce code ! Merci !

J'ai deux dernières questions sur le sujet avant de le résoudre pour de bon :

  • Je souhaite que le premier groupement (celui que j'ai fait en colonnes C à I) ne se déploie pas quand je clique sur le "2" en haut à gauche pour déployer tous les mois. Autrement dit je veux qu'il soit de rang 3.
  • Enfin, lorsque je fais retourner la Macro pour le mois suivant cela met des groupements par-dessus ceux du mois d'avant (pas très pratique), il faudrait que le code commence en fait par dégrouper ce qui l'était déjà ou s'il n'y avait pas de groupements qu'il groupe.

Encore merci c'est vraiment super !

Rechercher des sujets similaires à "grouper mois"