Recherche et Textbox

Bonjour, vu le nombre de réponses rapide sur ce forum, je me permet de poster mes 2 petits problèmes.

Alors je vais essayer d’être le plus claire possible.

Donc je commencer par présenter mon Infrastructure.

J'ai mon fichier Excel qui comporte 10 feuilles, sur chaque feuille il y a une colonne "code" et une autre "libellé".

J'ai créer un UserForm, dans celui-ci j’ai 10 lignes ( une pour chaque feuille ), sur chaque ligne j'ai le nom de la feuille, une ComboBox et un TextForm.

1/ Donc mon problème est que, quand je choisis un "code" dans ma ComboBox il faudrait que dans mon TextForm qui est en face, il m'affiche le "libellé" correspondant.

Il faudrait donc bien sur cela pour mes 10 lignes.

2/ Mon deuxième problème étant, je créer un bouton de commande en bas de mon UserForm, ce bouton va servir à rechercher dans ma 11 eme feuille (qui est un peut comme une base de données, cette feuille référence toutes les combinaisons de code qui ont déjà étais rentrer au par avant (mais ça on s'en fou, on veut juste chercher dedans)).

Mais il faut que ce soit automatique c'est-a-dire que dés que l'on clique sur le bouton cela recherche, si le code existe il me met sur le code dans la feuille et si il n'existe pas, petite fenêtre avec un message.

Voila c'est à peut prêt tout, je sais que ce sont quand même 2 gros points, mais cela va faire 1 mois que je n'arrive pas à trouver sur le net ce que je recherche :/

Merci d'avance en tous cas

Cordialement,

Bonjour,

Pour obtenir une réponse, il faudrait tout d'abord que tu joignes ton classeur (sans données confidentielles) avec quelques lignes de données ainsi que l'userform avec ses contrôles et les codes associés (même incomplets ou imparfaits).

A+

Voilà pour vous

Il n'y à rien de confidentiel.

https://forum.excel-pratique.com/post356030.html#p356030

Voilà un sujet où j'avais un problème un peu similaire... je devais lorsque je sélectionne un tube das une ComboBox pouvoir sélectionner l'épaisseur également dans une autre ComboBox, et que le poids associé se remplisse automatiquement dans une TextBox.

Ceuzin m'a fait un code assez bien fait, tu peux t'en inspirer je pense.

Victorien

Re-bonjour,

Voici qui devrait répondre à ta première question :

Pour la deuxième, je n'ai pas compris :

  • dans quelle TextBox tu saisis le code recherché (Code long, Code article),
  • la notion de "combinaisons de code entrés" (à quoi correspondent les chiffres dans la feuille V11 ????),

A+

Oh mon dieu tu es un dieu !

Merci infiniment !

Bien pour la recherche, c'est le code qui est dans "code long" qui doit être rechercher dans la feuille 11 dans la colonne A pour l'instant.

Pour l'instant la feuille 11 est un test, par la suite de vrai code seront rentré, mais la création on ne s'en occupe pas pour l'instant.

Pour l’instant le bouton doit rechercher dans la feuille 11 -> si existant que cela ce positionne sur le code dans la feuille 11

-> si pas existant pop up fenêtre "code non trouver".

A tester ....

A+

Merci infiniment c'est juste parfait ! Rien à dire !

J'ai modifier et intégrer a mon VB et tous marche parfaitement bien !

J'aurais peut être encore 1-2 questions mais rien de compliquer comparer à ce que j'ai demander avant

Merci encore !

Bonjour,

Alors j'ai un petit soucis (encore mdr), c'est juste dans mes combobox, quand je déclare mes feuilles pour les alimenter, j'aimerais ne pas mettre de limites de lignes ( comme le fichier est amené à augmenter).

En clair -> 'V1 Famille'!A6:A.... je voudrais qu'il n'y es pas de fin, mais que cela n'affiche pas des cases blanches là où il n'y a rien dans la ligne.

Cordialement, et encore merci !

Bonjour,

Tu peux utiliser des plages dynamiques.

Exemple avec V1 Famille :

J'ai déclaré une plage nommée Code_Famille qui fait référence à

=DECALER('V1 Famille'!$A$6;;;NBVAL('V1 Famille'!$A$6:$A$10000)).

J'ai déclaré une plage nommée Famille qui fait référence à

=DECALER('V1 Famille'!$A$6:$B$6;;;NBVAL('V1 Famille'!$B$6:$B$10000))

Dans l'Userform1, j'ai modifié la RowSource du ComboBox1

=Code_Famille

Dans le code, j'ai modifié la procédure :

Private Sub ComboBox1_Change() 'Famille
    With Worksheets("V1 Famille")
        Me.TextBox11 = Application.VLookup(Me.ComboBox1.Value, .Range("Famille"), 2, False)
    End With
End Sub

A+

D'accord je comprend ce que tu fait, mais du coup il y a quand même il valeur a changer si tu rajoute dans ta feuille ? non ?

Mais on peut pas, juste dire tu lis la colonne et arrêter d'afficher quand il n'y plus rien d’écrit ?

D'accord je comprend ce que tu fait, mais du coup il y a quand même il valeur a changer si tu rajoute dans ta feuille ? non ?

L'intérêt de la plage dynamique, c'est justement de ne pas avoir à modifier le code lorsque tu ajoutes un élément à la liste.

La hauteur de la plage est déterminée automatiquement suivant le nombre d'éléments (NBVAL).

A+

D'accord, donc j'ai juste à reprendre ton code et le mettre pour chacune des mes combo et changer juste la déclaration des combo ?

Mais par contre je ne comprend pourquoi dans ton code la déclaration des combobox continu jusque 12, alors que je n'ai que 10 combo :/

Puis quand j'essaye donc d'adapter ton code a mon fichier cela ne marche pas :/

Merci

Bonjour,

D'accord, donc j'ai juste à reprendre ton code et le mettre pour chacune des mes combo et changer juste la déclaration des combo ?

Pour chaque ComboBox, tu dois effectuer les mêmes opérations, à savoir :

  • déclarer les 2 plages nommées (Code_Famille et Famille dans l’exemple précédent)
  • modifier la RowSource du ComboBox
  • modifier la procédure.

Mais par contre je ne comprend pourquoi dans ton code la déclaration des combobox continu jusque 12, alors que je n'ai que 10 combo :/

Effectivement, les 2 procédures ComboBox11_Change et ComboBox12_Change peuvent être supprimées.

Et aussi comment fait tu pour re faire apparaitre les données dans les fichiers que tu me donne ?

Tu peux redimensionner la barre de défilement horizontale afin de faire apparaitre les onglets des feuilles.

A+

D'accord merci beaucoup pour tous

Mais je ne comprend pas, exactement ce que je doit changer, les changement que je vois c'est le mot famille a la place de "A...!A..."

Et dans le ressource la declaration famille...

Mais ou est déclarer le famille justement ?

Je suis vraiment désolé :/ mais la sur ce point là je ne comprend pas :/

Même sur ton fichier je ne vois pas comment continuer dans ta ligner :/

Regarde dans le Gestionnaire de noms, sous l'onglet Formules, groupe Noms définis.

A+

D'accord d'accord merci

Donc je copie et renomme pour chaque famille et c'est bon ?

Merci encore !!!

Rechercher des sujets similaires à "recherche textbox"