• 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.

listbox sneller laten updaten

Status
Niet open voor verdere reacties.

BjorntobeWild

Gebruiker
Lid geworden
29 aug 2011
Berichten
120
Hoi,

Ik heb een listbox waarin een hele lijst met namen wordt weergegeven. Door in een textveld een naam of letters te typen filtert de listbox op wat er in het textveld wordt ingetypt.
Nu staan er in de namenlijst veel namen waarin de combinatie "aa" voorkomt. Hierdoor duurt het updaten relatief lang.
Het updaten/filteren gebeurt door elke keer de lijst te doorlopen. Doe ik iets niet goed oftewel kan het beter?

Bekijk bijlage filter listbox.xlsm
 
Je kunt het vele malen sneller laten lopen door de hele range eerst in een array te zetten en van daaruit je filterlist op te bouwen.
Nu gaat hij iedere keer de hele range in het werkblad langs en dat maakt het traag.
 
Ik zou al eens beginnen met dit
Code:
Private Sub textbox1_Change()
te wijzigen in dit
Code:
Private Sub textbox1_AfterUpdate()
zodat je de code maar 1 keer doorloopt ipv bij elke letter die je in je textbox typt
 
Hoi Edmoor,

Dank voor de tip! Het is hiermee gelukt. Het gaat nu idd sneller.

@Warme bakkertje,

Ik wil graag bij elk karakter wat wordt ingevoerd dat de lijst wordt gefilterd, vandaar het onChange event. De lijst zal niet heel lang worden, dus qua geheugen zal het meevallen. Maar evengoed dank voor de tip.

Groet,

Bjorn
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan