Afficher/Masquer des lignes en fonction liste deroulante

Dav -  
 Dav -
Bonjour,

Je souhaite masquer/afficher des lignes en fonction du choix d'une liste déroulante, j'ai penser à filtrer mais quand je change le choix de ma liste les cellules ne réapparaissent pas.

Une idée ?

Fichier exemple : http://cjoint.com/?3CkoqwDji36

Merci

1 réponse

  1. ThauTheme Messages postés 1564 Statut Membre 160
     
    Bonjour Dav, bonjour le forum,

    Peut-être comme ça :

    Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Address <> "$A$9" Then Exit Sub 'si le changement a lieu ailleurs qu'en A9, sort de la procédure
    ActiveSheet.Rows.Hidden = False 'affiche toutes les lignes de l'onglet
    If Target.Value = "" Then Exit Sub 'si A9 est effacée, sort de la procédure
    Application.ScreenUpdating = False 'masque les rafraîchissements d'écran
    For I = 10 To Cells(Application.Rows.Count, 1).End(xlUp).Row 'boucle de 10 à la derniere ligne éditée de la colonne 1 (=A)
        If Cells(I, 1).Value <> Target.Value Then Rows(I).Hidden = True 'si la cellule en colonne A de la ligne I n'est pas égale à A9, masque la ligne
    Next I 'prochaine ligne de la boucle
    Application.ScreenUpdating = True 'affiche les rafraîchissements d'écran
    End Sub

    Efface A9 pour affiche toutes les lignes...
    0
    1. Dav
       
      D'abord merci pour ton aide.

      C'est pas vraiment ce que je souhaite, j'ai détaillé dans le fichier suivant :http://cjoint.com/?3CkrtfTwveW
      0