liste déroulante avec recherche par mots clés

Shaonin

XLDnaute Nouveau
Bonjour à tous,

Après moultes recherches, sur ce forum et sur d'autres, je n'arrives pas à trouver la solution à mon problème....
Je m'explique :
j'essaie de faire un bon de commande que mes collègues pourront remplir pour ensuite le passer aux gestionnaires qui s'occupent des commandes. Le problème étant qu'il faut que certains codes (nomenclature et matière) doivent apparaître dessus et que tout le monde n'est pas forcément au courant de comment les utiliser à bon escient.


sur le code matière pas de soucis, les entrées étant peu nombreuses, un simple menu déroulant couplé à une RECHERCHEV permet au gens de choisir la matière facilement et le code s'ajoute automatiquement.

j'aimerai par contre faire de même avec les codes nomenclature, mais le problème est que la liste déroulante est interminable (les entrées sont TRES nombreuses). il est donc très laborieux de trouver ce que l'on cherche dans cette liste... j'aimerai donc qu'en tapant des mots clés dans la cellule contenant le menu déroulant, on puisse réduire le nombre de propositions dans ladite liste (sur une recherche du style "contient" et non "commence par")





ma question est donc, comment puis-je le faire?

sachant que les codes nomenclatures/matières et leur correspondance sont chacun sur une feuille séparée du bon de commande (mais dans le même classeur)




D'avance merci pour votre aide, mesdames et messieurs,
Si vous avez besoin de plus d'infos, je serai ravi de vous répondre :)


P.S. : désolé pour le pavé, j'ai essayé d'aérer... :s
 

Shaonin

XLDnaute Nouveau
Bonjour,
Désolé de vous embêter à nouveau, j'y connais vraiment rien en VBA du coup je galère pas mal.
J'ai modifié la ligne dont on parlais plus haut pour aller jusqu'à F100
Le problème c'est que la fenêtre générée est générée toujours un peu plus bas lorsqu'on descend dans le tableau. Malheureusement, arrivé à la ligne 48 la fenêtre générée sors de l'écran et je suis obligé de faire alt+entrée pour ramener la fenêtre dans la partie visible.
pour moi ce n'est pas un problème en soi mais pour mes collègues maîtrisant peu l'outil informatique ça risque devenir rapidement un problème...
Du coup j'ai cherché de mon côté pour trouver une solution mais en vain...

Comment faire pour que la fenêtre soit générée toujours aux mêmes coordonnées sur l'écran (et non par rapport au numéro de ligne de la cellule)? Quitte à ce qu'elle masque la cellule sélectionnée, c'est pas un problème puis-qu’après validation des informations la fenêtre disparaît.

Merci encore pour votre aide précieuse.

cordialement.
 

Dranreb

XLDnaute Barbatruc
Bonjour.
Changez la propriété StartUpPosition du UserForm. Ou si vous la laissez à 0 - Manuel, les Top et Left,
Et supprimez les instructions Me.Top = PlgLgn.Top: Me.Left = PlgLgn.Columns("E").Left dans la Sub Afficher.
De toute façon elles ne sont pas bonnes: c'est considérablement plus compliqué que ça de positionner un UserForm par rapport à une plage.
 

Shaonin

XLDnaute Nouveau
j'ai pas réussi à trouver la propriété StartUpPosition mais en supprimant juste les "Me.Top = PlgLgn.Top: Me.Left = PlgLgn.Columns("E").Left" ça règle déjà le problème, la fenêtre s'ouvre là où on l'a laissé la fois d'avant.
Parfait en tout cas. Merci pour votre aide et votre amabilité encore une fois !
 

Pierrot60

XLDnaute Nouveau
Bonjour Dranreb,
J'ai vu ce que tu avais fait pour Shaonin c'est très bien.
J'ai un peu le même problème je dois faire une sorte de liste déroulante pour trouver le nom d'une affaire et lorsque celle-ci est trouvée je dois ramener le numero d'affaire correspondant à l'affaire. En plus j'aimerais faire une recherche "intelligente" dans le même style que Shaonin en mettant le début d'un mot il met la suite ou qql chose du genre ...
J'ai essayé la combobox mais cela est trop complexe pour moi je n'y arrive pas vraiment.
Merci d'avance
 

Discussions similaires

Réponses
16
Affichages
983
Réponses
2
Affichages
230

Statistiques des forums

Discussions
311 733
Messages
2 082 015
Membres
101 868
dernier inscrit
pierreselo33