XL 2016 Afficher/masquer des lignes en fonction d'un critère

telemarrk

XLDnaute Occasionnel
Bonjour,

Je souhaite afficher/masquer des lignes en fonction du choix fait en L1.

Exemple : si je choisis "Vente" en L1 je veux voir dans mon tableau que les ventes

Peut-on également lorsque l'on quitte le fichier que tous soient affichés ?

Merci
 

Pièces jointes

  • test-masque.xlsx
    14.5 KB · Affichages: 6
Solution
Cela fonctionne également, Gégé-45550.

Est-ce que je peux me permettre de vous demander une dernière chose.

Si par exemple, j'ajoute une colonne à gauche de "services" intitulé "numéro" cela ne fonctionne plus.
Comment je peux y remédier car mon tableau va certainement évoluer en ajoutant des colonnes.

Merci
Alors, toutes les questions d'un coup, c'est mieux ! ;)
Dans la ligne
VB:
If Filtre <> "admin" Then ActiveSheet.ListObjects("Tableau1").Range.AutoFilter Field:=1, Criteria1:=Filtre
le Field représente le N° de la colonne à filtrer.
Si vous ajoutez une colonne à gauche, la colonne à filtrer devient la deuxième colonne.
Il faut alors modifier Field:=1 en Field:=2, etc.
Cordialement,

natorp

XLDnaute Accro
Bjr telemarrk

Ce n'est pas déjà ce vous avez demandé ici :

Cordialement, Gérard
 

telemarrk

XLDnaute Occasionnel
Gégé-45550,

Peut-on faire une dernière modification à ton fichier joint.
Je viens de m'apercevoir que lorsque l'on quitte il affiche la totalité du tableau en proposant d'enregistrer.
Je voudrais que si le dernier choix est par exemple "Vente" il reste sur vente.

Une dernière chose également, je compte adapter le code vba sur un autre fichier excel, peut-on remplacer "services" par "admin" sans souci.


Merci
 

Gégé-45550

XLDnaute Accro
Gégé-45550,

Peut-on faire une dernière modification à ton fichier joint.
Je viens de m'apercevoir que lorsque l'on quitte il affiche la totalité du tableau en proposant d'enregistrer.
Je voudrais que si le dernier choix est par exemple "Vente" il reste sur vente.

Une dernière chose également, je compte adapter le code vba sur un autre fichier excel, peut-on remplacer "services" par "admin" sans souci.


Merci
re-Bonjour,
l'affichage complet correspond à la demande initiale :
Peut-on également lorsque l'on quitte le fichier que tous soient affichés ?
Pour supprimer cette action, il suffit d'effacer la procédure suivante dans ThisWorkbook :
VB:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
    ActiveSheet.ListObjects("Tableau1").Range.AutoFilter Field:=1
End Sub
Pour la deuxième demande, pour que le code prenne en compte n'importe quel intitulé à la place de "Services", modifiez la procédure comme suit :
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Filtre$
    If Target.Count > 1 Then Exit Sub
    If Not Intersect(Target, [L1]) Is Nothing Then
        ActiveSheet.ListObjects("Tableau1").Range.AutoFilter Field:=1
        Filtre = [L1]
        If Filtre <> ActiveSheet.ListObjects("Tableau1").HeaderRowRange(1) Then ActiveSheet.ListObjects("Tableau1").Range.AutoFilter Field:=1, Criteria1:=Filtre
    End If
End Sub
Cordialement,
 

Discussions similaires

Statistiques des forums

Discussions
312 215
Messages
2 086 319
Membres
103 177
dernier inscrit
grizly