Microsoft 365 ( résolut ) afficher les données selon le crêter de la liste déroulante

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

bahnini mohamed

XLDnaute Occasionnel
bonjour les amis
j'ai un tableau ou il y a trois colonnes ( opérateur, chef d'équipe et chef d'atelier )
j'ai crié une liste déroulante (cellule jaune) contenant ces trois éléments et je veux afficher les lignes et les colonnes contentant (x) pour chaque critère
c'est à dire si je choisi operateur le tableau affiche seulement les lignes et les colonnes contenant (x) pour l'opérateur
j'espère que la question est claire
merci d'avance pour votre coopération
 

Pièces jointes

Dernière édition:
Bonjour bahnini mohamed,

Un essai via VBA.
Si on efface la valeur de B2 (touche Suppr) alors on affiche toutes les lignes.
Le code est dans le module de la feuille "Feuil1".
VB:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim derlig&, idx&, i&
   Application.ScreenUpdating = False
   If Target.Address(0, 0) <> "B2" Then Exit Sub
   If Target = "" Then Me.UsedRange.Rows.EntireRow.Hidden = False: Exit Sub
   derlig = Me.UsedRange.Row + Me.UsedRange.Rows.Count - 1
   idx = 3 + Application.Match(Target, Range("d4:f4"), 0)
   For i = derlig To 5 Step -1: Cells(i, 1).EntireRow.Hidden = Cells(i, idx) <> "x": Next i
End Sub
 

Pièces jointes

Bonjour bahnini mohamed,

Un essai via VBA.
Si on efface la valeur de B2 (touche Suppr) alors on affiche toutes les lignes.
Le code est dans le module de la feuille "Feuil1".
VB:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim derlig&, idx&, i&
   Application.ScreenUpdating = False
   If Target.Address(0, 0) <> "B2" Then Exit Sub
   If Target = "" Then Me.UsedRange.Rows.EntireRow.Hidden = False: Exit Sub
   derlig = Me.UsedRange.Row + Me.UsedRange.Rows.Count - 1
   idx = 3 + Application.Match(Target, Range("d4:f4"), 0)
   For i = derlig To 5 Step -1: Cells(i, 1).EntireRow.Hidden = Cells(i, idx) <> "x": Next i
End Sub
merci infinimen(
[/QUOTE]

Bonjour bahnini mohamed,

Un essai via VBA.
Si on efface la valeur de B2 (touche Suppr) alors on affiche toutes les lignes.
Le code est dans le module de la feuille "Feuil1".
VB:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim derlig&, idx&, i&
   Application.ScreenUpdating = False
   If Target.Address(0, 0) <> "B2" Then Exit Sub
   If Target = "" Then Me.UsedRange.Rows.EntireRow.Hidden = False: Exit Sub
   derlig = Me.UsedRange.Row + Me.UsedRange.Rows.Count - 1
   idx = 3 + Application.Match(Target, Range("d4:f4"), 0)
   For i = derlig To 5 Step -1: Cells(i, 1).EntireRow.Hidden = Cells(i, idx) <> "x": Next i
End Sub
merci infiniment monsieur
vraiment incroyable
problème résolut
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Retour