Combobox qui affiche un résultat en fonction de 2 conditions imbriquées

Bonjour,

Je cherche à afficher une référence donnée dans une textbox présente dans un formulaire / userform en VBA selon une imbrication de 2 conditions successives :

J'ai une 1ere textbox dont le contenu est entré manuellement , l'utilisateur y entre un nombre entier.

Une 2eme textbox contiendra un texte prédéfini.

Je voudrai qu'une Combobox affiche alors une valeur alphanumérique choisie parmi une liste de données issue d'une colonne présente dans une feuille du classeur, et cela selon différents cas (il y aura environ 20 cas possibles) de ce style :

  • si textbox1 < 60 & textbox2 = AAA =====> Combobox = ref1
  • si textbox1 < 60 & textbox2 = BBB =====> Combobox = ref2
  • si textbox1 > 60 & textbox1 <90 & textbox2 = AAA =====> Combobox = ref3
  • si textbox1 > 60 & textbox1 <90 & textbox2 = BBB =====> Combobox = ref4

etc...

Je ne sais pas comment gérer l'imbrication des conditions selon une valeur numérique donnée dans textbox1, pourriez vous me montrer comment faire svp ?

La difficulté supplémentaire que je rencontre est également liée au fait que le contenu du résultat affiché dans la Combobox sera issu d'une liste de références listées dans la colonne A de page du classeur nommé 'References'

J'ai besoin d'afficher le choix final dans une combobox et non pas dans une textbox afin de permettre à l'utilisateur d’éventuellement pouvoir modifier le choix final dans celle-ci si cela était nécessaire.

Merci beaucoup pour votre aide,

49exemple.xlsm (25.69 Ko)

Bonjour Icn

un début de réponse avec une boucle

69icn.xlsm (25.96 Ko)

Bonjour,

Une proposition à tester. Après avoir taper le texte dans T1 on tape un nombre en T2 en suite on appuie Enter 2 fois et la refx s'affiche dans le combobox.

J'ai utilisé Select Case pour faire les tests.Voir si cela vous convient

45exemple-icn.xlsm (25.36 Ko)

Merci à vous tous pour ces idées, je vais m'en inspirer pour avancer mon projet.

Est il possible de faire appel a un VLookup pour aller chercher la concordance dans la feuille 'References' ?

J'ai essayé d'appeler ce genre de fonction sur un onchange de la 2eme textbox mais j'ai une erreur dès que son contenu est modifié :

" Impossible de lire la propriété VLookup de la classe WorksheetFunction "

Bonsoir

c'est possible avec une recherche mais si y a que 20 cas, la boucle va être vite faite

sans ton code, difficile de t'aider sur l'erreur

Voici l'exemple que je cherche à faire fonctionner avec VLookup

Le principe est le suivant :

Dans l'onglet 'References' sont stockés des codes prestations pour 2 agences : A et B

chaque code prestation à son tarif distinct, qui est basé sur une surface. ( voir onglet References )

Le formulaire intervient de façon dynamique :

  • On choisi une Agence : A ou B
  • On entre une surface donnée : valeur numérique
  • On obtient un code prestation ( en combobox afin de pouvoir le changer manuellement si besoin ) : Fonctionne.

Le formulaire doit alors afficher le tarif associé au code prestation choisi : VLookup ne fonctionne pas.

Ai je mal défini ma fonction " Sub FIND_TARIF_PRESTATION() " ?

Merci à vous,

61exemple.xlsm (43.59 Ko)

Bonjour

le réponse est

tarifBD = Application.WorksheetFunction.VLookup(codepresta, Sheets("References").Range("b3:G65536"), 6, False)

la valeur recherchée doit se trouver dans la première colonne du tableau de recherche donc B et pas A

et doit donc renvoyer la 6 ème colonne et non la 7ème

Oui, effectivement je n'avais pas fait attention à ce cela.

Merci beaucoup.

Rechercher des sujets similaires à "combobox qui affiche resultat fonction conditions imbriquees"