sub uitvoeren na drukken op entertoets

Status
Niet open voor verdere reacties.

jeroenSturm

Gebruiker
Lid geworden
2 mei 2012
Berichten
197
hallo,

ik ben op zoek naar een stukje code of een voorbeeld van het gebruik van Key Code Constants
hierbij wil ik dat een sub word uitgevoerd nadat er in een combobox op enter word gedrukt.

is dit mogelijk zoja HOE ???

alvast bedankt..
 
Laatst bewerkt:
Jeroen,

Dit heb je helemaal niet nodig, binnen een combobox wordt gebruik gemaakt van de muis om een keuze te maken
de enter toets wordt dus niet gebruikt.
Wel kun je een ComboBox1_Change() gebruiken om vast te stellen of een combobox verander is waarna
de sub geschreven kan worden.

Eventueel kun je met ComboBox1_Exit() een sub starten als de combobox verlaten wordt.

Veel Succes.
 
Laatst bewerkt:
wat ik echter zou willen is om het invoerveld als zoekveld te gebruiken nu heb ik een sub search geschreven maar als ik die in change zet dan doet hij bij elke letter die ik intyp zoeken en dat is nou ook niet wat ik wil dus had ik bedacht om er een knop achter te zetten wat ook niet verkeerd is maar nu heb ik dit
Code:
Private Sub ComboBox1_GotFocus()
      Application.OnKey "{ENTER}", "Search"

End Sub


Sub Search()
'code voor de search
End Sub



Private Sub ComboBox1_LostFocus()
Application.OnKey "{ENTER}"
End Sub

maar enter werkt dan alleen als je in application zit..

misschien zo iets duidelijker
 
Je kunt in een combobox ook gewoon keyboard gebruiken hoor, dat ligt aan de instelling van de MatchEntry eigenschap. Als deze op None staat kun je in de combox typen wat je wilt, bij iedere letter wordt het Change event dan getriggerd. Als de gebruiker een selectie uit de entries maakt dan wordt ook het _Click event getriggerd.
 
Met de MatchEntry property kies je of de combobox matcht op
0 - de eerste letter
1 - de complete invoer
2 - geen (dus vrij typen)

Als je de combobox selecteert en je kijkt bij eigenschappen zie je wat de mogelijkheden zijn.

Maar je moet even goed nadenken wat je precies wil bereiken. Je zou volgens mij best met MatchEntry=2 en het _Click event kunnen bereiken wat je bedoelt.
 
Je hebt toch ook het AfterUpdate-event dat pas de code triggert na gebruik van Enter of Tab.
 
ik heb nu dit voor erlkaar gekregen allen reageerd hij niet op enter

Code:
Sub ComboBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
    If KeyAscii = 13 Then
        
        Module2.zoeken2
       
    End If
End Sub

hoe los ik dat op ?
 
Blijft mijn vraag: wat wil je nu bereiken met de combobox dat je het niet via de standaard events wilt afhandelen?
 
die combobox gebruik ik als een soort van zoekfunctie voor namen vanuit een andere sheet
ik heb het nu zo voor elkkaar gekregen dat ik ook met tekstintypen kan zoeken maar ik wil liever dat ik dan op enter kan drukken i.p.v. elke keer op een knop als je wil zoeken .
 
In dat geval moet je inderdaad op KeyLevel gaan kijken. Dus zoiets:
Code:
Private Sub ComboBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
    If KeyCode = 13 Then
        With Me.ComboBox1
            If .ListIndex <> -1 Then
               MsgBox "Match, you selected " & .ListIndex & "  " & .List(.ListIndex)
            Else
                MsgBox .Text & " is not in the list!"
            End If
        End With
    End If
End Sub
 
dat werkt wel dankje maar nu heb ik nog het volgende..

Code:
Private Sub ComboBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
    If KeyCode = 13 Then
        With Me.ComboBox1
            Module2.zoeken2
            .DropDown
        End With
        
         
    End If

die dropdown wil hij niet uitvoeren ..
hoe kan ik dit oplossen??
misschien is het maar een kleinigheidje maar ik kom er niet uit.
 
De with/end with heb je voor 1 regeltje niet nodig hoor, daar maak je het alleen maar ingewikkelder door. Dus gewoon me.combobox1.dropdown.
Maar wat is de meerwaarde van de dropdown? Je gaat al zoeken en de gebruiker heeft al een waarde gekozen. Ik zou dus ook de DropDown en zoeken2 omdraaien. Bij mij werkt het overigens wel hoor, ik stuur ff voorbeeld mee: Bekijk bijlage 4962410.xlsm
 
hij sluit de dropdown al als de sub keydown eindigt (raar)

ik zal er eens naar kijken maar die enter werkt in ieder geval

mijn dank is groot.:d
 
Laatst bewerkt:
nee volgens mij niet , ik heb het helemaal per stap (f8) gedaan en zodra hij End Sub regel voorbij is dan klap hij weer in dus eens even uitzoeken waar dat vandaan komt..
maar wederom bedankt voor de moeite
 
het ligt dus aan de enter toest want ik heb hem op space gezet keycode = 32
en dan opent hij de dropdown wel ...

dan maar op zoek naar een oplossing (misschien heb jij er 1 voor de hand liggen?)

update probleem opgelost dit moest er nog bij

Code:
 KeyCode = 0
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan