1 pièce(s) jointe(s)
VBA grouper des lignes avec niveau
Bonjour,
Je cherche à partir d'un fichier excel à créer une macro permettant de grouper des lignes sur plusieurs niveaux. Une image sera plus clair que toute explication :
Pièce jointe 161267
Concrétement, j'ai une colonne qui indique des valeurs et suivant cette valeur je groupe les lignes. J'ai créer un bout de code pour faire cela mais il me groupe toutes les lignes de mon tableau au même niveau :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| Function grouper(classeur, colonne, nombre)
For vari = nombre To 1 Step -1
k = 2
Do Until Workbooks(classeur).Worksheets(1).Cells(k, colonne) = ""
If Workbooks(classeur).Worksheets(1).Cells(k, colonne).Value = vari Then
premier = k
vu = Workbooks(classeur).Worksheets(1).Cells(k, colonne).Value
Do Until vu = vari Or vu > vari
k = k + 1
Loop
dernier = k
Rows(premier & ":" & dernier).Group
k = k + 1
Else
k = k + 1
End If
Loop
Next
End Function |
J'ai conscience que l'exposé de mon problème est très peu clair donc n'hésitez pas à me poser des questions si ça peut vous aider?