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

keuzemenu en eerste letter

Status
Niet open voor verdere reacties.

vrouw

Terugkerende gebruiker
Lid geworden
27 mrt 2010
Berichten
1.525
Hoi,

Ik heb een keuzemenu gemaakt :d maar die is wel heel lang.
# het gereageerd niet op de eerste letter als je die intikt.is dat op te lossen?
# het pop-up venstertje of keuze schermpje (hoe wil je het noemen) is wel erg klein, kan je dat vergroten?
 
Heb je het keuzemenuutje gemaakt dmv Validatie ?
Dan is het een beetje klein ja vind ik ook, als je het via VBA doet (Besturingselement) dan kun je de grootte aanpassen.
Hoe je hem op de eerste letter kunt laten reageren weet ik helaas niet.

Groeten Marcel
 
Ja, gemaakt met validatie. Het kan dus ook met VBA?
 
Ja, dan kun je in ieder geval de grootte instellen en lettertype en nog veel meer.
Als je een voorbeeldje post met korte uitleg wat je wilt kan ik je misschien verder helpen.

Groeten Marcel
 
Dat moet ik dan eerst gaan maken want wat ik nu heb is nogal vertrouwelijk.:o
 
oke, dat is dan een " combobox" die je bij ontwikkelaars=>invoegen=>besturingselementen vind?
Ik kan dan inderdaad de combobox groter en kleiner slepen maar de tekst kan ik niet aanpassen in formaat?

Edit.
Ha, gevonden hoe ik de tekst kan opmaken.:o
Wat me wel opvalt met dit keuzemenu dat de gebruiker er zelf tekst in kan typen, en dat is niet de bedoeling....
 
Laatst bewerkt:
@Vrouw
Kan je een voorbeeld bestand laten zien zodat we een overzicht hebben, met een duidelijke uitleg het geen je wil bereiken,anders gaat het een raadseltje worden.
 
Nee niet echt. Ik wil wel de hele lijst zien (of een deel zeg maar) en als ik dan de eerste letter intik dat je daar komt te staan met de cursor zodat je niet de hele lijst hoeft af te zoeken als Tinus moet hebben.
En daarbij zou ik het keuzemenu dus wat groter willen hebben dan standaard keuzemenu van Excel.
 
Laatst bewerkt door een moderator:
Wat is het probleem als je de T in tikt en je ziet Tinus, Tjark, Toos T.... T.... en niet alle namen die met een andere letter begint.
Andere naam, andere letter intikken; zo simpel is het.
 
Ja, wellicht kan ik er wel wat mee. Ik probeer hem nu na te maken zodat ik het ga begrijpen maar dat lukt niet.
Ik zie al die vreemde waardes in validatie en ook nog een formule in een cell ergens op het werkblad. Die horen er allemaal bij?
 
Dat is inderdaad wel een mooie, maar niet wat ik zoek. Er zitten allerlei formules in de celllen van de namen.
Aangezien in mijn bestand de gegevens dmv een query worden ogehaald ben je daarna de formules weer kwijt.

Als je de eerste letter intikt in het keuze en dan gelijk naar die waarden gaat is op dit moment even het belangrijkste voor me.
 
Als je de eerste letter intikt in het keuze en dan gelijk naar die waarden gaat

Hoe je dat moet doen wordt hier voor dus al meermalen aangegeven.
Je hebt daar de gegeven formules voor nodig. Deze doen precies wat je wilt.
Tik een letter in en je gaat gelijk naar die waarden.
Zonder die formules gaat het niet.
 
Hier een methode met Vba.
 

Bijlagen

:thumb:YES, dit is wat ik zocht, Shapoo:thumb:
Ik zie in de VBA dat er op ider blad " Option Explicit" staat. Is dat nodig en waarvoor dient dat?

Edit:
Als er iets in kolom B staat komt er een foutmelding. Als er iets in de andere kolommen staat komt die foutmelding niet.
Waar staat de verwijzing in de VBA naar waar de lijst met namen staat?
 
Laatst bewerkt door een moderator:
Kleine aanpassing.
Code:
Private Sub ComboBox1_DropButtonClick()
 If ComboBox1 = vbNullString Then ComboBox1.List = Cells(1).CurrentRegion.[COLOR=#ff0000]Columns(1).[/COLOR]Value
End Sub
Code:
Private Sub ComboBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
Dim cl As Range
ComboBox1.Clear
 For Each cl In Cells(1).CurrentRegion[COLOR=#ff0000].Columns(1).SpecialCells(2)[/COLOR]
  If Asc(cl) = KeyAscii Or Asc(cl) = KeyAscii + 32 Or Asc(cl) = KeyAscii - 32 Then ComboBox1.AddItem cl
 Next cl
End Sub
Anders een range opgeven met variabele lengte.
 
Of
Code:
Private Sub ComboBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
Dim cl As Range, sn As String
 ComboBox1.Clear
 For Each cl In Cells(1).CurrentRegion.Columns(1).SpecialCells(2)
  If Asc(cl) = KeyAscii Or Asc(cl) = KeyAscii - 32 Then sn = sn & cl & ";"
 Next cl
 ComboBox1.List = Split(sn, ";")
End Sub
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan