Grouper des lignes en boucle

Stan -  
Frenchie83 Messages postés 2240 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour à tous,

Je vous situe le contexte :) Sur Excel, j'ai des tableaux les uns en dessous des autres, avec le nom du client correspondant sur la lignes juste au dessus.

Je souhaites "grouper" les lignes des tableaux pour ne plus que voir une liste de nom dont je pourrais ouvrir sa "fiche" (=son tableau) à mon gré. Or il y a pleins de tableaux et j'aurais souhaité créer une macro pour sélectionner les lignes et les grouper automatiquement en boucle. En sachant que les tableaux et l'espace entre eux sont identiques partout. Voilà ma formule de base ... :

Range(ActiveCell, ActiveCell.Offset(10, 0)).EntireRow.Rows.Group
ActiveCell.Offset(11, 0).Select
Range(ActiveCell, ActiveCell.Offset(10, 0)).EntireRow.Rows.Group

Merci d'avance pour votre aide et votre soutien ;)

1 réponse

Frenchie83 Messages postés 2240 Date d'inscription   Statut Membre Dernière intervention   338
 
Bonjour
On aurait bien aimer voir la disposition des tableaux pour que l'on puisse fournir une réponse adaptée. En attendant, voici une proposition à paramétrer selon vos besoins.
Sub Grouper()
    Application.ScreenUpdating = False
    Dim Nblig As Long 'nombre de Lignes d'un tableau
    Dim Decalage As Long 'Décalage entre chaque tableau
    
    'mettre ici vos propres paramètres
    Nblig = 10
    Decalage = 12
    [A2].Select '1ère ligne du tableau à regrouper, juste en dessous de celle du Nom du premier client
    
    Do While ActiveCell.Offset(-1, 0).Value <> "" 'Boucler tant que la ligne du nom du client n'est pas vide
        Range(ActiveCell, ActiveCell.Offset(Nblig, 0)).EntireRow.Rows.Group
        ActiveCell.Offset(Decalage, 0).Select
    Loop
End Sub

Cdlt
0