Microsoft 365 Organiser un tableau pour ne faire qu'apparaître les lignes contenant une couleur de remplissage particulière

Carine35

XLDnaute Nouveau
Bonjour,

Débutante en VBA, je recherche de l’aide pour la création d’une macro.

L’objectif est de visualiser les lignes du tableau contenant une couleur de remplissage rouge et de les remonter en haut de tableau.
Les lignes ne contenant pas de cellules rouges restent en fin de tableau non-visible.
Cette couleur est donnée par une mise en forme conditionnelle unique pour chaque cellule.
La ligne de cellules rouges entière doit être visible.

Ci-joint un fichier exemple avec dans le premier onglet le tableau de départ et le deuxième onglet la visualisation du tableau souhaité.

Il faudrait pouvoir activer la macro pour afficher le tableau et pouvoir retrouver l’affichage complet par un autre bouton.

Merci d’avance pour votre aide
 

Pièces jointes

  • Classeur1_Exemple.xlsm
    27.9 KB · Affichages: 6

fanch55

XLDnaute Barbatruc
Bonjour,
Code pour les 2 boutons ( vous avez deux type de couleur "rouge" dans vos Mfc ) :

VB:
Sub Show_Red()
Dim Target As Range, Cel As Range
Dim ToHide As Boolean
    Rows.EntireRow.Hidden = False
    Set Target = Columns("B").Find("Act")
    If Not Target Is Nothing Then
        First_Adr = Target.Address
        Do: ToHide = True
            For Each Cel In Target.Offset(, 1).Resize(, 12).Cells
                If Cel.DisplayFormat.Interior.Color = 395485 _
                Or Cel.DisplayFormat.Interior.Color = 255 Then
                    ToHide = False
                    Exit For
                End If
            Next
            If ToHide Then
                Target.Offset(-1, -1).Resize(2).EntireRow.Hidden = True
            End If
            Set Target = Columns("B").FindNext(Target)
        Loop Until Target.Address = First_Adr
    End If
End Sub

Sub Show_All()
    Rows.EntireRow.Hidden = False
End Sub
 

Discussions similaires

Membres actuellement en ligne

Statistiques des forums

Discussions
312 105
Messages
2 085 350
Membres
102 870
dernier inscrit
Armisa