Boostez vos compétences Excel avec notre communauté !
Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force.
Apprenez, échangez, progressez – et tout ça gratuitement !
👉 Inscrivez-vous maintenant !
je n'arrive pas à créer une textbox avec une recherche intuitive d'une listbox.
cliquez sur le bouton de l'onglet "choix" pour ouvrir le formulaire.
merci d'avance pour votre aide.
bonjour à tous, lorsque que je demare mon userform tous est bon dans ma listbox (les format date ou format heure son bien définit) mais lorsque je fait une recherche avec ma textbox tous les format partent... avez vous une solution ? il est aussi impossible d'afficher jusqu'a la colonne X de...
re
tiens un exemple simplicime
le textbox recherche dans toutes les colonnes
j'ai une colonne(la dernière ) pour correspondance ligne sur feuille
la liste fait 1000 lignes
tu choisi la méthode en enlevant le "X" dans l'events
ps: j'oubliais
tu a deux sous méthodes "commence par" ou " contient" dans les deux méthodes
c'est beau la vie non ?
donc
soit
VB:
PrivateSub TextBox1_Change()'methode add itemDim i&
ListBox1.Clear
If TextBox1 =""Then'bien que la boucle remet d'elle meme le tableau en entier si le textbox est vide'pas la peine de la faire mouliner
ListBox1.List = tableau
ElseFor i =1To UBound(tbl)'option de recherche'If tbl(i) Like "*|" & TextBox1.Value & "*|" Then 'on cherche dans tbl (option :COMMENCE PAR )If tbl(i)Like"|*"& TextBox1.Value &"*|"Then'on cherche dans tbl (option:CONTIENT)With ListBox1:.AddItem:For c =1To UBound(tableau,2):.List(.ListCount -1, c -1)= tableau(i, c):Next:EndWithEndIfNextEndIfEndSub
soit
VB:
PrivateSub TextBox1_Change()'methode compose new tbl(tbl2)Dim tbl2(), a&, i&, ic&
ListBox1.Clear
If TextBox1 =""Then'bien que la boucle remet d'elle meme le tableau en entier si le textbox est vide'pas la peine de la faire mouliner
ListBox1.List = tableau
ElseFor i =1To UBound(tbl)'option de rechercheIf tbl(i)Like"*|"& TextBox1.Value &"*|"Then'on cherche dans tbl (option :COMMENCE PAR )'If tbl(i) Like "|*" & TextBox2.Value & "*|" Then 'on cherche dans tbl (option:CONTIENT)
a = a +1:ReDim Preserve tbl2(1To UBound(tableau,2),1To a)For ic =1To UBound(tbl2): tbl2(ic, a)= tableau(i, ic):Next
ListBox1.Column = tbl2
'With ListBox1: .AddItem: For c = 1 To UBound(tableau, 2): .List(.ListCount - 1, c - 1) = tableau(i, c): Next: End WithEndIfNextEndIfEndSub
et dans le activate
VB:
PrivateSub UserForm_Activate()Dim i&
tableau = Sheets(1).Range("A2:E"& Cells(Rows.Count,1).End(xlUp).Row).Value
ReDim tbl(1To UBound(tableau))
ListBox1.List = tableau
ListBox1.ColumnCount = UBound(tableau,2)For i =1To UBound(tableau)
tbl(i)="|"& Join(Application.Index(tableau, i,0),"|")&"|"'on join la ligne du tableau dans la ligne i de tbl
tableau(i,5)= i +1'on ajoute le numero de ligne en derniere colonne
DoEvents 'pour ne pas attendre la fin de concstruction de tbl pour l'affichage complet de la listeNextEndSub
Bonsoir a tous et au forum
patricktoulon je me suis permis de prendre votre fichier qui fonctionne trés bien, j'aurais une demande supplementaire si possible sur votre fichier pouvez-vous rajouter l'option clic.
je m'explique une fois la ligne trouver dans la listbox en cliquant dessus je voudrais aller dessus dans la feuille.
merci d'avance de votre gentillesse.
Cordialement
Bonjour
demande qui n'a rien a voir avec le sujet et en plus c'est pas toi l'initiateur du dit sujet
ouvre une nouvelle discussion pour ce sujet sur le forum
et donne un fichier exemple pour que l'on puisse travailler dessus
- Navigue sans publicité - Accède à Cléa, notre assistante IA experte Excel... et pas que... - Profite de fonctionnalités exclusives Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel. Je deviens Supporter XLD