[VBA] Masquer des colonnes identiques
Résolu/Fermé
actaris51
Messages postés
93
Date d'inscription
mardi 15 juillet 2008
Statut
Membre
Dernière intervention
11 juillet 2011
-
29 mars 2011 à 17:20
eriiic Messages postés 24569 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 28 décembre 2023 - 4 avril 2011 à 10:23
eriiic Messages postés 24569 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 28 décembre 2023 - 4 avril 2011 à 10:23
A voir également:
- [VBA] Masquer des colonnes identiques
- Masquer conversation whatsapp - Guide
- Word colonnes indépendantes - Guide
- Figer des colonnes excel - Guide
- Appel masquer - Guide
- Comment masquer les amis sur facebook - Guide
3 réponses
eriiic
Messages postés
24569
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
28 décembre 2023
7 212
Modifié par eriiic le 4/04/2011 à 09:54
Modifié par eriiic le 4/04/2011 à 09:54
Bonjour,
Tu peux faire un plan sur les colonnes par macro :
Ex : http://www.cijoint.fr/cjlink.php?file=cj201104/cijgL1i7Jd.xls
Pas le temps de donner plus d'explications mais je reviens dans 1h.
eric
edit : de retour, et remplacement par une version un peu plus élaborée.
Et je viens de voir qu'il faut contrôler les changements sur toutes les lignes, nouvelle version un peut plus tard
Tu peux faire un plan sur les colonnes par macro :
Sub groupeCol() Dim col As Long, lig As Long lig = 3 'ligne de base pour le regroupement des colonnes ' ActiveSheet.Outline.ShowLevels ColumnLevels:=2 On Error GoTo suite Columns.Ungroup suite: On Error GoTo 0 For col = 2 To Cells(lig, Rows(1).Cells.Count).End(xlToLeft).Column If Cells(lig, col) = Cells(lig, col - 1) Then Cells(lig, col).Columns.Group Next col ActiveSheet.Outline.ShowLevels ColumnLevels:=1 End Sub
Ex : http://www.cijoint.fr/cjlink.php?file=cj201104/cijgL1i7Jd.xls
Pas le temps de donner plus d'explications mais je reviens dans 1h.
eric
edit : de retour, et remplacement par une version un peu plus élaborée.
Et je viens de voir qu'il faut contrôler les changements sur toutes les lignes, nouvelle version un peut plus tard
eriiic
Messages postés
24569
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
28 décembre 2023
7 212
4 avril 2011 à 10:23
4 avril 2011 à 10:23
Re,
La version définitive :
http://www.cijoint.fr/cjlink.php?file=cj201104/cijVkxPn3x.xls
eric
La version définitive :
Sub groupeCol() Dim col As Long, lig As Long, derlig As Long ' ActiveSheet.Outline.ShowLevels ColumnLevels:=2 On Error GoTo suite Columns.Ungroup suite: On Error GoTo 0 derlig = Cells(Columns(1).Cells.Count, 1).End(xlUp).Row For col = 2 To Cells(3, Rows(1).Cells.Count).End(xlToLeft).Column For lig = 3 To derlig If Cells(lig, col) <> Cells(lig, col - 1) Then Exit For Next lig If lig > derlig Then Cells(lig, col).Columns.Group Next col ActiveSheet.Outline.ShowLevels ColumnLevels:=1 End Sub
http://www.cijoint.fr/cjlink.php?file=cj201104/cijVkxPn3x.xls
eric