Réaliser un filtre à partir d'une liste accessible depuis une LISTBOX

chris6999

XLDnaute Impliqué
Bonjour

Je souhaiterais accéder à partir d'un bouton à une LISTBOX afin de faire un filtre sur une des valeurs contenues dans ma liste.
Je précise que cette liste correspond à une plage nommée dans une autre feuille que celle où se situera le bouton.

Donc j'ai créé un bouton, mon USERFORM de type LISTBOX s'affiche avec la liste correspondant à la plage par contre après je sèche!

Comment faire le lien avec le code permettant de faire le filtre sur la valeur choisie dans ma LISTBOX;

D'habitude je fais des filtres avec un code de type Selection.AutoFilter Field:=17, Criteria1:="Critère choisi"

Je mets un fichier en pièce jointe ce sera plus parlant.

Merci d'avance pour votre aide
Cordialement
 

Pièces jointes

  • test.xls
    43.5 KB · Affichages: 59
  • test.xls
    43.5 KB · Affichages: 43
  • test.xls
    43.5 KB · Affichages: 51

chris6999

XLDnaute Impliqué
Re : Réaliser un filtre à partir d'une liste accessible depuis une LISTBOX

Merci mais je ne parviens pas à rédiger qq chose qui fonctionne
J'ai mis en suivant le conseil de Dranreb

Private Sub UserForm_Activate()
ListBox1.RowSource = "Code_agent"
Criteria1 = ListBox1.Value
AutoFilter Field:=2, Criteria1
End Sub

Pouvez vous m'aider
Cordialement
 

Dranreb

XLDnaute Barbatruc
Re : Réaliser un filtre à partir d'une liste accessible depuis une LISTBOX

Il manque une expression Range suivie d'un point devant Autofilter et :=ListBox1.Value derrière Criteria1. Et l'affectation Criteria1 = ListBox1.Value devant cette instruction ne sert à rien. Cordialement.
 

Dranreb

XLDnaute Barbatruc
Re : Réaliser un filtre à partir d'une liste accessible depuis une LISTBOX

Celui ci ?
Bizarre les réaction à l'envoi d'une réponse ce soir…
Oui et non: je me suis retrouvé avec ma réponse en double après une attente inexplicable. J'ai donc remplacé le deuxième exemplaire inutile par cette phrase, vu qu'on ne peut pas supprimer de message.
Cordialement.
 

chris6999

XLDnaute Impliqué
Re : Réaliser un filtre à partir d'une liste accessible depuis une LISTBOX

Bonsoir

Je n'ai pas réussi à mettre en pratiques les consignes de Dranreb.

Private Sub UserForm_Activate()
ListBox1.RowSource = "Code_agent"
Criteria1 = ListBox1.Value
Range.AutoFilter Field:=2, Criteria1=ListBox1.value
End Sub

Cela ne foctionne pas.

Je voudrais juste faire un filtre de la colonne 2 à partir de ma sélection dans ma listbox.
Cela ne doit pas être si compliqué...
En tous caspour moi c'est un casse tête.

Si quelqu'un passe par là..
Merci d'avance
 

Dranreb

XLDnaute Barbatruc
Re : Réaliser un filtre à partir d'une liste accessible depuis une LISTBOX

Bonsoir.
Simplement Range tout seul ne constitue pas une expression Range correcte.
Il faut ExpressionWorkSheet.Range(AddresseDeLaPlage)
Avec ExpressionWorksheet: une expression Worksheet correcte.
C'est à dire dans le cas général: ExpressionWorkbook.Worksheets(Index)
Avec ExpressionWorbook: une expression Workbook correcte.
Exemple d'expression Range correcte: ActiveWorkbook.Worksheets(1).Range("A2:Z5000")
Si les flèches du filtre automatique sont installées à demeure vous pouvez utiliser
Feuil1.AutoFilter.Range.AutoFilter Field:=2, Criteria1=ListBox1.value
À supposer que Feuil1 soit le CodeName de la feuille concernée
À +
 
Dernière édition:

Discussions similaires

Réponses
16
Affichages
605
Réponses
9
Affichages
855
Réponses
18
Affichages
470
Réponses
21
Affichages
2 K
Réponses
16
Affichages
564

Statistiques des forums

Discussions
314 488
Messages
2 110 132
Membres
110 679
dernier inscrit
lpierr