Home |
Search |
Today's Posts |
#1
Posted to microsoft.public.excel.programming
|
|||
|
|||
Can't trigger Keydown event
I got a form with a MultiPage control, and haven't been able to find a way to change tabs without using the mouse. I'd like to use some key combination, perhaps Ctrl + vbKeyLeft or vbKeyRight. Ideally the key command should work no matter what control has focus. How does all that sound in terms of usability and best practices?
The immediate problem now is that the code I wrote won't trigger switching the tabs. There are 2 tabs: ' Allow shifting tabs with arrow keys Private Sub MultiPage1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, _ ByVal Shift As Integer) If Shift = 2 And KeyCode = vbKeyLeft Then If MultiPage1.Value = 1 Then Exit Sub Else MultiPage1.Value = 0 End If End If If Shift = 2 And KeyCode = vbKeyRight Then If MultiPage1.Value = 0 Then Exit Sub Else MultiPage1.Value = 1 End If End If End Sub Hope someone can spot the error here. Gustaf |
#2
Posted to microsoft.public.excel.programming
|
|||
|
|||
Can't trigger Keydown event
This will work better :-)
Private Sub MultiPage1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, _ ByVal Shift As Integer) If Shift = 2 And KeyCode = vbKeyLeft Then If MultiPage1.Value = 0 Then Exit Sub Else MultiPage1.Value = 0 End If End If If Shift = 2 And KeyCode = vbKeyRight Then If MultiPage1.Value = 1 Then Exit Sub Else MultiPage1.Value = 1 End If End If End Sub RBS "Gustaf" wrote in message ... I got a form with a MultiPage control, and haven't been able to find a way to change tabs without using the mouse. I'd like to use some key combination, perhaps Ctrl + vbKeyLeft or vbKeyRight. Ideally the key command should work no matter what control has focus. How does all that sound in terms of usability and best practices? The immediate problem now is that the code I wrote won't trigger switching the tabs. There are 2 tabs: ' Allow shifting tabs with arrow keys Private Sub MultiPage1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, _ ByVal Shift As Integer) If Shift = 2 And KeyCode = vbKeyLeft Then If MultiPage1.Value = 1 Then Exit Sub Else MultiPage1.Value = 0 End If End If If Shift = 2 And KeyCode = vbKeyRight Then If MultiPage1.Value = 0 Then Exit Sub Else MultiPage1.Value = 1 End If End If End Sub Hope someone can spot the error here. Gustaf |
#3
Posted to microsoft.public.excel.programming
|
|||
|
|||
Can't trigger Keydown event
Thank you, it works, but only if I put the event on the textbox that gets focus when the form loads rather than the multipage. It seems there's no way to give focus to the multipage or form itself. Is there a way to attach the event to all controls on the form, without actually writing separate events for each control?
Gustaf RB Smissaert wrote: This will work better :-) Private Sub MultiPage1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, _ ByVal Shift As Integer) If Shift = 2 And KeyCode = vbKeyLeft Then If MultiPage1.Value = 0 Then Exit Sub Else MultiPage1.Value = 0 End If End If If Shift = 2 And KeyCode = vbKeyRight Then If MultiPage1.Value = 1 Then Exit Sub Else MultiPage1.Value = 1 End If End If End Sub RBS "Gustaf" wrote in message ... I got a form with a MultiPage control, and haven't been able to find a way to change tabs without using the mouse. I'd like to use some key combination, perhaps Ctrl + vbKeyLeft or vbKeyRight. Ideally the key command should work no matter what control has focus. How does all that sound in terms of usability and best practices? The immediate problem now is that the code I wrote won't trigger switching the tabs. There are 2 tabs: ' Allow shifting tabs with arrow keys Private Sub MultiPage1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, _ ByVal Shift As Integer) If Shift = 2 And KeyCode = vbKeyLeft Then If MultiPage1.Value = 1 Then Exit Sub Else MultiPage1.Value = 0 End If End If If Shift = 2 And KeyCode = vbKeyRight Then If MultiPage1.Value = 0 Then Exit Sub Else MultiPage1.Value = 1 End If End If End Sub Hope someone can spot the error here. Gustaf |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
Similar Threads | ||||
Thread | Forum | |||
keydown event | Excel Programming | |||
keydown event | Excel Programming | |||
user form-on open event? keydown event? | Excel Programming | |||
keydown event | Excel Programming |