Filtrer des données à partir d'une liste déroulante

Bonjour à tous,

J'aimerai solliciter votre aide sur un besoin précis que j'ai sur un fichier Exel (vous le trouverez en PJ). J'ai un peu cherché sur les forums et je pense qu'il faut peut être passer par VBA...

Alors voila, je cherche a lier des noms de gestionnaires à des lignes excel pour qu'un filtre automatique se fasse lors du choix du gestionnaire.

Par exemple, lorsque je choisie dans ma liste en O1 le prénom "PAUL", j'aimerai que s'affichent uniquement les lignes correspondant à PAUL dans la colonne N, en masquant les autres.

Je pense que c'est possible mais je ne sais pas comment faire! Peut être passer par des liaisons de cellules...

Un énorme merci par avance aux personnes qui prendront un peu de temps pour m'aider!

Edit dan : Supprimé "Help" du titre du sujet

Bonjour,

A la vue du fichier, pourquoi ne pas mettre simplement la fonction FILTRE AUTOMATIQUE en colonne N ??

Crdlt

Bonjour Dan et merci pour ta réponse!

C'est une bonne question, j'ai oublié de préciser qu'à terme, j'aimerai masquer la colonne N justement pour éviter de faire un filtre directement , et plutôt passer par une commande sous forme de liste déroulante car cette colonne ne doit pas apparaitre dans le fichier, et aussi parce que le document est en fichier partager, et j'aimerai éviter certaines erreurs liées au filtre automatique par les personnes l'utilisant.

Penses tu que ma requête est réalisable? doit on forcément passer par VBA?

merci a toi encore une fois

Re,

Une idée comme ceci :

  • clique droite sur feuille MS Globale...
  • choisis "visualiser le code"
  • place le code ci-dessous dans la fenetre
Private Sub Worksheet_Change(ByVal Target As Range)
'Macro Dan
Application.ScreenUpdating = False
If Not Intersect(Target, Range("O3")) Is Nothing Then
Cells.EntireRow.Hidden = False
For i = 4 To Range("N" & Rows.Count).End(xlUp).Row
    If UCase(Target.Value) = UCase(Range("N" & i)) Then Rows(i).EntireRow.Hidden = True
Next
End If
Application.ScreenUpdating = True
End Sub

Si ok, clique sur le v vert à coté du bouton EDITER afin de cloturer le fil lors de ta réponse

Crdlt

Wouaou ca a l'air bien compliqué!

Mais ca ne fonctionne pas... enfin je fait peux être pas la bonne manip (je suis mauvais ). Losque j'ouvre la fenêtre de code VBA de l'onglet et que je copie ton code, je doit faire quelque chose pour lancer l’application? Parceque lorsque je clic sur "ececuter la macro", rien ne se passe...

re

...Parceque lorsque je clic sur "ececuter la macro", rien ne se passe...

Tu ne dois pas cliquer sur exécuter car le code fontionne tout seul à l'arrière plan

Je suppose que tu as bien placé le code dans la feuille ?? (clique droite sur le nom de l'onglet --> puis "Visualiser le code" et coller le code dans la fenetre)

Change simplement la valeur de O3 et cela cachera toutes les lignes concernées

Exemple : mets TONY en O3

A te relire

Ok merci bcp pour ton aide!!!

Rechercher des sujets similaires à "filtrer donnees partir liste deroulante"