Il n'y a pas de soucis 
Si on reprend la formule que tu as trouvé, on a :
ActiveSheet.Range("A:AO").Autofilter Field:=1,_ Criteria1:="La référence"
Ce que tu cherches, c'est remplacer la listbox qui contient tes références comme critère de filtre. Donc, à avoir ceci :
ActiveSheet.Range("A:AO").Autofilter Field:=1,_ Criteria1:=me.cbo_ref ' le contrôle qui contient tes références dans ton UserForm
Le champ "Field" correspond au numéro de colonne de ta zone de sélection (ici, c'est "A:AO") donc, le 1 correspond à A
Feuil1.Range("A:AO").Autofilter Field:=1,_ Criteria1:=me.cbo_ref
Je te conseille de remplacer ActiveSheet par le "Codename" de ton onglet.
Comment obtenir le CodeName ?
Dans l'éditeur de VBA, tu peux visualiser les modules, les feuilles et tes UserForms dans une petite fenêtre. Le codename de tes feuilles Excel correspond au nom indiqué.
A noter que tu as deux noms pour chaque feuille, sous la forme : codename (nom afficher).
Tu peux éditer le codename de ta feuille dans les propriétés (touche F4).
Enfin, tu peux choisir plusieurs valeurs dans tes filtres, comme ceci (* code obtenu avec l'enregistreur de macro) :
ActiveSheet.Range("$A$1:$B$4").AutoFilter Field:=1, Criteria1:="=1", Operator:=xlOr, Criteria2:="=3"
Bon courage
Partager