aide sur langage VB : filtre et sélection

rh.finances

XLDnaute Occasionnel
Bonjour à tous,

je sollicite l'aide des internautes de cet excellent forum pour un petit problème de filtre et de sélection sur VB
j'ai récupéré un fichier de gestion de stock et je voudrais améliorer la fonction "recherche" de ce fichier.
le bouton de commande "recherche" se trouve en bas tout à droite du tableau. dans l'éditeur VB, il correspond à l'userform intitulé "userform2".
il permet de faire une recherche par "famille de produits" (correspondant à la colonne B de la feuille "Produits Référencés) ou par le produits lui même (correspondant à la colonne A de la feuille "Produits Référencés).

le problème est le suivant: la "famille de produit" est, comme son nom l'indique, un regroupement de produits de même type (ex: la famille de produits "stylos" comprend des produits stylos bic rouge, des stylos bic vert, etc.).
toutefois les fonctions du code "recherche" ne permettent pas de faire une recherche par famille car, par ex, toute la liste comprenant le mot stylo apparaît.
mon souhait serait de pouvoir modifier la fonction "recherche" en permettant la sélection d'une seule et unique famille de produit (ex: stylo). une fois sélectionnée, la listbox devrait faire apparaître tous les produits correspondants à la famille en question (ex: stylo bic rouge, etc.)

n'étant pas très aguerri au langage VB (j'ai juste réussi à créer le bouton "quitter" ), est-il possible de faire cela?

enfin, je souhaiterais savoir s'il est possible,après avoir sélectionner le produit voulu dans la listebox, de l'intégrer dans la cellule B4 de la feuille "saisie" en cliquant sur le bouton de commande "valider".

j'ai fait pas mal de recherche sur des forums pour arriver à mes fins. j'ai testé plusieurs codes mais j'ai échoué lamentablement à tous les coups ...suis vraiment pas bon en langage VB.

en espérant que ma demande n'est pas trop abusive.

d'avance,merci à tous pour votre aide précieuse

Alex

fichier joint à l'adresse suivante: Free - Envoyez vos documents
 

youky(BJ)

XLDnaute Barbatruc
Re : aide sur langage VB : filtre et sélection

Re,
Pour faciliter MODIFICATION mettre la propriété ShowModale=False
Rajoute la ligne en rouge dans ta macro dans l'userform ...gerer
Code:
Private Sub ComboBox2_Change()
With Sheets("Produits Référencés")
 For n = 2 To .Range("A65536").End(xlUp).Row
   If .Range("A" & n) = ComboBox2 Then
     ligne = n
     Exit For
   End If
 Next
'Affichage des valeurs dans les textboxs selon éléments de la combobox2
[COLOR="DarkRed"]If ComboBox2 = "" Then ligne = 65536[/COLOR]
For i = 8 To 15
      Controls("TextBox" & i).Value = .Cells(ligne, i - 7)
    Next
End With
            
End Sub

Et dans l'userform2 idem ligne en rouge à rajouter
Code:
Private Sub ListBox1_Click()
Feuil4.[B4] = ListBox1.List(ListBox1.ListIndex)
[COLOR="DarkRed"]gerer.ComboBox2.Text = Feuil4.[B4][/COLOR]
End Sub
Comme ceci tu auras acces à la recherche depuis MODIF et le click fera le reste pour remplir.
A+
 

Discussions similaires

Réponses
9
Affichages
202
Réponses
2
Affichages
1 K

Statistiques des forums

Discussions
312 386
Messages
2 087 850
Membres
103 669
dernier inscrit
Anne Sicard