• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

in listbox zoeken en filteren

Status
Niet open voor verdere reacties.

Andre175

Gebruiker
Lid geworden
2 feb 2018
Berichten
351
goedemorgen allen.

Ik heb een tabel welke wordt weergegeven in een listbox.
Door in de listbox te klikken worden meerdere textboxen gevuld met gegevens.
In textbox Zoeken kan ik zoeken in de listbox.

Echter..... Ik zou graag willen dat wanneer ik een text type in textbox zoeken dat de weergave in de listbox alleen de lijst weergeeft die overeen komt met de zoektext.

dus als ik bijvoorbeeld "Tim" type, dat dan alleen de namen "Tim"weergegeven wordt.

Zoals het nu werkt wordt de eerste overeenkomt geselecteerd. wanneer de lijst erg lang wordt is het lastig om de juiste "Tim"te vinden.


hoe kan ik dit oplossen?



Bekijk bijlage zoeken_filteren_listbox.xlsb


André
 
Zoiets?
 

Bijlagen

  • zoeken_filteren_listbox.xlsb
    19 KB · Weergaven: 52
Dankjewl gast0660 voor de snelle reactie
Dit is idd een goed alternatief waar ik eerst wel ff mee vooruit kan.

het zou echter mooi zijn wanneer er ook met gegevens uit de andere kolommen gefilterd kan worden.

Is het niet mogelijk om te filteren zodra er in het tekstvak zoeken getypt wordt?
 
Is het niet mogelijk om te filteren zodra er in het tekstvak zoeken getypt wordt?
Zet de code onder de textbox ipv de knop.
In het voorbeeld:
Code:
Private Sub T_01_Change()
For i = LB_Kids.ListCount - 1 To 0 Step -1
    If InStr(1, LB_Kids.List(i, 0), T_01) = 0 Then LB_Kids.RemoveItem (i)
Next
End Sub
 
Zover was ik al.

Dat er nu niet op achternaam gezocht kan worden is mee te leven.

Kan de hoofdletter gevoeligheid wel uitgeschakeld worden?
 
Kan de hoofdletter gevoeligheid wel uitgeschakeld worden?
Het rode gedeelte toevoegen.
Code:
For i = LB_Kids.ListCount - 1 To 0 Step -1
    If InStr(1, LB_Kids.List(i, 0), T_01[COLOR="#FF0000"], vbTextCompare[/COLOR]) = 0 Then LB_Kids.RemoveItem (i)
Next
Dat er nu niet op achternaam gezocht kan worden is mee te leven.
Voor de Achternaam kan je toch een tweede textbox gebruiken
Stel de tweede textbox heeft de naam T_02
Dan is de code
Code:
For i = LB_Kids.ListCount - 1 To 0 Step -1
    If InStr(1, LB_Kids.List(i, [COLOR="#FF0000"]1[/COLOR]), T_0[COLOR="#FF0000"]2[/COLOR], vbTextCompare) = 0 Then LB_Kids.RemoveItem (i)
Next
 
Laatst bewerkt:
Zo kan het ook:
 

Bijlagen

  • __zoeken_filteren_listbox.xlsb
    18 KB · Weergaven: 73
iedereen bedankt voor het meedenken.

voor mij is dit probleem opgelost.

zal het als opgelost markeren
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan