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

vervolgkeuzelijst uitbreiden

Status
Niet open voor verdere reacties.

Spiesse

Gebruiker
Lid geworden
14 jul 2011
Berichten
902
in bijlage heb ik een bestand gestopt dat ik nog gekregen heb hier van het forum...

kan dit principe geintegreerd worden in een userform? Ik heb al een userform gemaakt, maar het lukt met niet om dit 'zichtbaar' te krijgen...

stappenplan: in de combobox zou, bij het intikken van gelijk welke letter, de mogelijkheden zichtbaar moeten komen in de userform... kan dit in de combobox, of moet er een speciaal 'venster' gemaakt worden met de mogelijkheden?

de gegevens staan op blad 3 voor de moment... er is al een vba aanwezig, je ziet deze ook werken als je in de combobox schrijft...

ik waardeer jullie hulp op voorhand!

Bekijk bijlage BESTELLING DELIFRANCE MACRO testbestand.xlsm
 
klaaspeter, thx voor je reply. is het niet zo dat, als je een keuzelijst met invoervak plaatst ipv combobox, dat je dan in je userform initialize uw items moet adden?

bv additem "..."
additem "..."

mijn bestand zou een 500-600 namen moeten bevatten waaruit kan gekozen worden... zie me er niet goe aan te beginnen :)

in het bestand heb ik al iets werkend gekregen die op blad 3 de filtering uitvoert, maar ik zie het niet in het invoervak... btw: is combobox en keuzelijst met invoervak niet hetzelfde? :)

spiesse
 
Probeer gebruik van "select" te vermijden in je code. Het maakt een beetje spaghetti van je code en wordt steeds lastiger om te debuggen naar gelang je bestand groter wordt. Bovendien maakt het je code veel langzamer

Je kunt de combobox eenvoudig laden met:
Code:
ComboBox7.RowSource = "blad3!b4:b" & Range("b60000").End(xlUp).Row

nadeel is dan wel dat de lijst niet te bewerken is. wel kan de lijst op dezelfde manier geladen door door het bereik te lopen en dan kunnen items wel aangepast worden.

Nadeel van optie twee is dat "autocomplete" niet gebruikt kan worden tenzij de namenlijst op alfabet gesorteerd wordt. en de pulldown moet dan permanent aanstaan. Het is dus een klein beetje behelpen:

1) je maakt geen gebruik van autocomplete, in de pulldown staan dan wel de juiste namen:
als je "D" invoert wordt het niet automatisch aangevuld tot "david", echter in de pulldown staan wel alle items die beginnen met "d"
2) je gebruikt autocomplete: de namen moet verplicht gesorteerd worden en de pulldown is permanent zichtbaar zolang je bezig bent in dat vak.
 
hey wampier,

thx voor de interessante uitleg :) ik ga beide opties es bekijken.. maar als ik het zo lees zal ik waarschijnlijk voor optie 2 gaan...

waar moet ik btw die .rowsource plaatsen? in de userform initialise, of in de combobox zelf? of beiden?
 
Private Sub Combobox7_Change()
ComboBox7.RowSource = "blad3!a2:d60000" & Range("b60000").End(xlUp).Row
End Sub

haai,
deze heb ik zowel bij de combo geplaatst als in de initialise... Je moet weten dat op blad drie ik een tabel gemaakt heb alfabetisch van cel a1 tot b600...

ziet dit er werkbaar uit? als ik het invul in mijn userform krijg ik wel de namen te zien en kan ik door de tab direct weg :)
 
Ik ga uit van je meegestuurde voorbeeld dat de namen in kolom B had.

Je stelt rowsource nu in op heel kolom "A" dat is ook prima. Mijn formule voegt alleen de namen toe tot waar ze ook ingegeven staan, dat bespaard wat geheugen en is efficienter, maar qua werking veranderd er weinig.

Ik zou rowsource ook echt alleen doen op de kolom met namen, dus als de namen in kolom "A" staan, alleen kolom A toevoegen.
 
oesj, ik zie dat er een smiley in mijn formule gekropen is :)

combobox7.rowsource= "blad3!a2:b60000" & Range ("a60000").End(xlUp).row
end sub

dit zou dus het moeten zijn om enkel de namen uit kolom a weer te geven? wat ik wel zie is dat er geen pulldown verschijnt... moet ik dit ergens instellen?
 
Code:
combobox7.rowsource= "blad3!a2:a" & Range ("a60000").End(xlUp).row

De pulldown moet je handmatig doen met het knopje aan de rechterkant, of aanroepen via VBA
 
wampier, thx voor de geboden hulp, ik ga dit zeker kunnen gebruiken! moest ik nog ergens vastraken in mijn bestand dan post ik hier de volgende hindernis!
alvast bedankt voor nu!

spiesse
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan