Grouper lignes selon valeur d'une cellule en VBA [résolu]

smash

XLDnaute Nouveau
Bonjour à tous,

Je recherche depuis un moment sur le forum parmis les nombreux posts une solution à un problème qui je pense relativement basique mais mes connaissances en VBA sont quasi nulles...
J'ai besoin de grouper les lignes qui contiennent un même nom, par exemple "Code" :

Colonne A :
Code1
A
B
C
Code2
D
A
C
etc.

Objectif : Ne voir que les lignes Code1 et Code2 mais pouvoir les dissocier si nécessaire pour voir le détail.

Je sais qu'il est très facile de le faire en manuel via Données -> Grouper mais j'ai besoin d'automatiser le processus car mon fichier fait plusieurs centaines de lignes.
Ma difficulté principale est au niveau de la sélection entre Code1 et Code2
je joins un petit fichier exemple afin de mieux cerner ma demande.

D'avance merci

Bon Week-End
 

Pièces jointes

  • test_regroupement.xlsx
    11.7 KB · Affichages: 100
  • test_regroupement.xlsx
    11.7 KB · Affichages: 108
  • test_regroupement.xlsx
    11.7 KB · Affichages: 119
Dernière édition:

smash

XLDnaute Nouveau
Re : Grouper lignes selon valeur d'une cellule en VBA

Bonsoir,

Merci JB pour ta réponse rapide.
Dans l'idée c'est en effet le résultat attendu par contre je cherche une macro qui puisse regrouper d'un coup toutes ces lignes contenant le nom code et si possible avec l'outil "grouper" car il peut être utile de consulter (dissocier) les lignes contenues dans le groupe.
Ta solution sauf erreur de ma part oblige à cliquer sur toutes les cellules préalablement misent en gras ?
J'arrive au même résultat avec un filtre textuel en choisissant commence par "code" par contre impossible ensuite de consulter le contenu du fichier sans effacer ce filtre.

Actuellement en VBA j'arrive à trouver et sélectionner la cellule contenant le nom "code" mais ensuite je bloque sur comment sélectionner les lignes suivantes jusqu'à trouver une nouvelle cellule qui contient le nom "code" mais en plus en ne sélectionnant que les lignes comprises entre.

Cordialement
 

smash

XLDnaute Nouveau
Re : Grouper lignes selon valeur d'une cellule en VBA

Bonjour JB,

Grace à ton code je suis arrivé au résultat voulu. Je suis en train de faire de légères adpatations.
Merci beaucoup pour ton aide (dernière réponse à 2h00 :p)

Bonne fin de Week-End
 

Novice2018

XLDnaute Nouveau
Bonjour,

Fichier très utile!

Deux fonctions supplémentaires qui me seraient très utiles :

1. Je souhaiterais ajouter des niveaux de regroupement.
Aujourd'hui en double cliquant sur les cellules jaunes, toutes les cellules blanches se (de)groupent.
J'aimerais pouvoir rajouter des cellules 'oranges' avec le niveau hiérarchique suivant jaune > orange > blanc. En double cliquant sur les cellules jaunes on (dé)groupe les cellules oranges (jaune > orange), les cellules blanches étant groupées. Si on double clique sur les cellules oranges on groupe/degroupe les cellules blanches

2. Avoir le même type de fonctionnalité avec les colonnes
En ligne 1, une date est rentrée dans chaque colonne
J'aimerais pouvoir afficher les colonnes dont le (mois;année) est >= (mois(aujourdhui())-1;annee(aujourdhui()))
Avec un bouton qui permet de ré afficher le passé si besoin

D'avance un grand merci pour votre aide
 

Discussions similaires

Statistiques des forums

Discussions
312 501
Messages
2 089 014
Membres
104 005
dernier inscrit
Maxence