Formule pour filtrer en VBA via une Combobox

Fermé
BOUZY - 12 nov. 2011 à 17:31
Patrice33740 Messages postés 8556 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 2 mars 2023 - 12 nov. 2011 à 18:04
Bonjour,


Dans le cadre de'un poste que j'occupe depuis quelques mois en tant que Gestionnaire de stock dans une PME. je me suis lancer dans la création d'un programme sous VBA de manière à avoir un suivi rigoureux. Les trois quarts du travail ont été faient.

Alors si je suis venu vous solliciter, c'est juste parce que je suis bloqué dans mon évolution; et que je n'arrive pas à trouver des solutions dans les livres.

J'ai donc un userform qui compte trois 'Frames" dont :

* La première contient un ComboBox1 pour selectionner l'article que l'on recherche et un CommandButton1 pour Lancer la Recheche

* La deuxième contient deux TextBox dont le premier est destiné à afficher la quantité en Stock et le second à afficher la dernière date où l'article a été mouvementé (sortie ou entrée)

* La troisème contient les Boutons VALIDER, ANNULER, ...

Alors je souhaite faire en sotre que lorsque je lance la recherche d'un article sélectionné dans ma ComboBox1, qu'il aille filtrer dans le tableau de ma feuil2 nommé HISTORIQUE, la valeur de la ComboBox1 et ensuite, qu'il me renvoie la différence obtenue et le total de la colonne des Entrées et celle des Sorties de cet aricle dans la TextBox1.

Je ne sais pas si mes explications ont été assez claires, mais je compte vraiment sur votre aide pour y voir clair.

Je vous remercie d'avance pour tous

Merci
A voir également:

1 réponse

Patrice33740 Messages postés 8556 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 2 mars 2023 1 776
Modifié par Patrice33740 le 12/11/2011 à 18:06
Essaies de comprendre et d'adapter ce code à ton besoin :
Sub xxx()
Dim cherche As Variant
Dim cel As Range
Dim valeur As Double

'Affectation du mot cherché
cherche = Combobox1.Value

'Chercher le mot
Set cel = Feuil2.Columns(1).Find(cherche, LookIn:=xlValues, Lookat:=xlWhole)
If cel Is Nothing Then Exit Sub

'Calculer la valeur
valeur = cel.Offset(, 1).Value - cel.Offset(, 2).Value

End Sub
0