Grouper/Dissocier via VBA

Bien le bonjour,

Je travaille actuellement sur un petit script qui à terme dois chercher et grouper des lignes sur un onglet spécifique.

Pour ce faire j’ai écrit le code ci-après, qui recherche "Code :" correspondant à ma ligne de départ et "Fin :" pour ma ligne de fin, il sélectionne la plage, et groupe l'ensemble.

Sub GOUPE_AUTO()
Dim CelDeb As Range, CelFin As Range
Start = "Code :"
Fin = "Fin :"
    With Worksheets("Feuil1")

        Set CelDeb = .Range("B1:B20000").Find(Start)
        Set CelFin = .Range("B1:B20000").Find(Fin)
        Range(CelDeb, CelFin).Select
        Selection.Rows.Group

    End With
    'Next
End Sub

Ce code fonctionne parfaitement, mais une seule fois, comment puis-je créer une boucle avec ce code afin qu’il l’effectue cette recherche sur disons 20000 lignes et qu'il groupe à chaque fois ?

je vous joint mon fichier pour faciliter la compréhension de ma demande.

Vous remerciant par avance pour votre aide.

Bien cordialement.

159grouper-auto.xlsm (14.37 Ko)

Bonjour

code à essayer en lieu et place de celui actuel

Sub GROUPE_AUTO()
Dim dlg As Integer, rfin As Integer, redeb As Integer
Dim start As String, fin As String
On Error Resume Next
Cells.Rows.Ungroup
On Error GoTo 0
start = "Code :"
fin = "Fin :"
dlg = Range("B" & Rows.Count).End(xlUp).Row
rfin = 1
Do While rfin < dlg
    With Worksheets("Feuil1")
        On Error Resume Next
        rdeb = .Range("B" & rfin & ":B" & dlg).Find(start).Row
        rfin = .Range("B" & rdeb & ":B" & dlg).Find(fin).Row
        Range(Cells(rdeb, 2), Cells(rfin, 2)).Rows.Group
    End With
Loop
End Sub

Si ok et terminé, veillez lors de votre réponse à cocher la case à cocher verte à coté du bouton Editer pour cloturer le fil

Cordialement

C'est parfait, c'est exactement ce que je recherché je vous remercie beaucoup !

Rechercher des sujets similaires à "grouper dissocier via vba"