Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 208
Default Keydown issue


I have a userform with 3 buttons and the following code:

Private Sub AddButton_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, _
ByVal Shift As Integer)

Dim A As Integer

If Chr(KeyCode) = "A" Then
Unload AddOrFind
AddTitle.Show
End If

End Sub


Private Sub FindButton_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, _
ByVal Shift As Integer)

Dim A As Integer

If Chr(KeyCode) = "F" Then
Unload AddOrFind
Search.Show
End If

End Sub


Private Sub SummaryButton_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, _
ByVal Shift As Integer)

Dim A As Integer

If Chr(KeyCode) = "V" Then
Unload AddOrFind
Summary.Show
End If

End Sub

The userform initiates with the first button active. If I press "a" then I
get the desired result. But the other two buttons do no respond to the
keydown unless I tab to that button to make it active. I would like to be
able to press any of the 3 buttons without having to tab. How do I
accomplish this?
  #2   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 1,049
Default Keydown issue


the keydown for all three buttons AND the userform call a check routine,
passing the keycode.
the check routine use SELECT to determine what to do ...


Private Sub AddButton_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, _
ByVal Shift As Integer)
CheckKey KeyCode
End Sub
Private Sub FindButton_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, _
ByVal Shift As Integer)
CheckKey KeyCode
End Sub
Private Sub SummaryButton_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, _
ByVal Shift As Integer)
CheckKey KeyCode
End Sub
Private Sub AddButton_Click()
CheckKey KeyCode
End Sub
Private Sub UserForm_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal
Shift As Integer)
CheckKey KeyCode
End Sub

Sub CheckKey(KeyCode As MSForms.ReturnInteger)
Select Case Chr(KeyCode)
Case "A"
MsgBox "AddTitle"
Case "V"
MsgBox "Summary"
Case "F"
MsgBox "Find"
End Select
End Sub


"Bishop" wrote in message
...
I have a userform with 3 buttons and the following code:

Private Sub AddButton_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, _
ByVal Shift As Integer)

Dim A As Integer

If Chr(KeyCode) = "A" Then
Unload AddOrFind
AddTitle.Show
End If

End Sub


Private Sub FindButton_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, _
ByVal Shift As Integer)

Dim A As Integer

If Chr(KeyCode) = "F" Then
Unload AddOrFind
Search.Show
End If

End Sub


Private Sub SummaryButton_KeyDown(ByVal KeyCode As MSForms.ReturnInteger,
_
ByVal Shift As Integer)

Dim A As Integer

If Chr(KeyCode) = "V" Then
Unload AddOrFind
Summary.Show
End If

End Sub

The userform initiates with the first button active. If I press "a" then
I
get the desired result. But the other two buttons do no respond to the
keydown unless I tab to that button to make it active. I would like to be
able to press any of the 3 buttons without having to tab. How do I
accomplish this?


  #3   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 208
Default Keydown issue


Here is my actual code:

Sub CheckKey(KeyCode As MSForms.ReturnInteger)
Select Case Chr(KeyCode)
Case "A"
Unload AddOrFind
AddTitle.Show
Case "F"
Unload AddOrFind
GetTitle.Show
Case "V"
Unload AddOrFind
Summary.Show
End Select
End Sub

I'm getting Error 91 for GetTitle.Show. Any idea why?

"Patrick Molloy" wrote:

the keydown for all three buttons AND the userform call a check routine,
passing the keycode.
the check routine use SELECT to determine what to do ...


Private Sub AddButton_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, _
ByVal Shift As Integer)
CheckKey KeyCode
End Sub
Private Sub FindButton_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, _
ByVal Shift As Integer)
CheckKey KeyCode
End Sub
Private Sub SummaryButton_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, _
ByVal Shift As Integer)
CheckKey KeyCode
End Sub
Private Sub AddButton_Click()
CheckKey KeyCode
End Sub
Private Sub UserForm_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal
Shift As Integer)
CheckKey KeyCode
End Sub

Sub CheckKey(KeyCode As MSForms.ReturnInteger)
Select Case Chr(KeyCode)
Case "A"
MsgBox "AddTitle"
Case "V"
MsgBox "Summary"
Case "F"
MsgBox "Find"
End Select
End Sub


"Bishop" wrote in message
...
I have a userform with 3 buttons and the following code:

Private Sub AddButton_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, _
ByVal Shift As Integer)

Dim A As Integer

If Chr(KeyCode) = "A" Then
Unload AddOrFind
AddTitle.Show
End If

End Sub


Private Sub FindButton_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, _
ByVal Shift As Integer)

Dim A As Integer

If Chr(KeyCode) = "F" Then
Unload AddOrFind
Search.Show
End If

End Sub


Private Sub SummaryButton_KeyDown(ByVal KeyCode As MSForms.ReturnInteger,
_
ByVal Shift As Integer)

Dim A As Integer

If Chr(KeyCode) = "V" Then
Unload AddOrFind
Summary.Show
End If

End Sub

The userform initiates with the first button active. If I press "a" then
I
get the desired result. But the other two buttons do no respond to the
keydown unless I tab to that button to make it active. I would like to be
able to press any of the 3 buttons without having to tab. How do I
accomplish this?



  #4   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 1,049
Default Keydown issue


Object variable or With block variable not set

is the name of your form correct?

"Bishop" wrote in message
...
Here is my actual code:

Sub CheckKey(KeyCode As MSForms.ReturnInteger)
Select Case Chr(KeyCode)
Case "A"
Unload AddOrFind
AddTitle.Show
Case "F"
Unload AddOrFind
GetTitle.Show
Case "V"
Unload AddOrFind
Summary.Show
End Select
End Sub

I'm getting Error 91 for GetTitle.Show. Any idea why?

"Patrick Molloy" wrote:

the keydown for all three buttons AND the userform call a check routine,
passing the keycode.
the check routine use SELECT to determine what to do ...


Private Sub AddButton_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, _
ByVal Shift As Integer)
CheckKey KeyCode
End Sub
Private Sub FindButton_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, _
ByVal Shift As Integer)
CheckKey KeyCode
End Sub
Private Sub SummaryButton_KeyDown(ByVal KeyCode As MSForms.ReturnInteger,
_
ByVal Shift As Integer)
CheckKey KeyCode
End Sub
Private Sub AddButton_Click()
CheckKey KeyCode
End Sub
Private Sub UserForm_KeyDown(ByVal KeyCode As MSForms.ReturnInteger,
ByVal
Shift As Integer)
CheckKey KeyCode
End Sub

Sub CheckKey(KeyCode As MSForms.ReturnInteger)
Select Case Chr(KeyCode)
Case "A"
MsgBox "AddTitle"
Case "V"
MsgBox "Summary"
Case "F"
MsgBox "Find"
End Select
End Sub


"Bishop" wrote in message
...
I have a userform with 3 buttons and the following code:

Private Sub AddButton_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, _
ByVal Shift As Integer)

Dim A As Integer

If Chr(KeyCode) = "A" Then
Unload AddOrFind
AddTitle.Show
End If

End Sub


Private Sub FindButton_KeyDown(ByVal KeyCode As MSForms.ReturnInteger,
_
ByVal Shift As Integer)

Dim A As Integer

If Chr(KeyCode) = "F" Then
Unload AddOrFind
Search.Show
End If

End Sub


Private Sub SummaryButton_KeyDown(ByVal KeyCode As
MSForms.ReturnInteger,
_
ByVal Shift As Integer)

Dim A As Integer

If Chr(KeyCode) = "V" Then
Unload AddOrFind
Summary.Show
End If

End Sub

The userform initiates with the first button active. If I press "a"
then
I
get the desired result. But the other two buttons do no respond to the
keydown unless I tab to that button to make it active. I would like to
be
able to press any of the 3 buttons without having to tab. How do I
accomplish this?



  #5   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 8,520
Default Keydown issue


Try the below (untested)


Sub ControlForms(varCode)

If Chr(varCode) = "A" Then
Unload AddOrFind
AddTitle.Show
ElseIf Chr(varCode) = "F" Then
Unload AddOrFind
Search.Show
ElseIf Chr(varCode) = "V" Then
Unload AddOrFind
Summary.Show
End If

End Sub

Private Sub AddButton_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, _
ByVal Shift As Integer)
ControlForms keycode
End Sub

Private Sub FindButton_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, _
ByVal Shift As Integer)
ControlForms keycode
End Sub

Private Sub SummaryButton_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, _
ByVal Shift As Integer)
ControlForms keycode
End Sub

--
If this post helps click Yes
---------------
Jacob Skaria


"Bishop" wrote:

I have a userform with 3 buttons and the following code:

Private Sub AddButton_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, _
ByVal Shift As Integer)

Dim A As Integer

If Chr(KeyCode) = "A" Then
Unload AddOrFind
AddTitle.Show
End If

End Sub


Private Sub FindButton_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, _
ByVal Shift As Integer)

Dim A As Integer

If Chr(KeyCode) = "F" Then
Unload AddOrFind
Search.Show
End If

End Sub


Private Sub SummaryButton_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, _
ByVal Shift As Integer)

Dim A As Integer

If Chr(KeyCode) = "V" Then
Unload AddOrFind
Summary.Show
End If

End Sub

The userform initiates with the first button active. If I press "a" then I
get the desired result. But the other two buttons do no respond to the
keydown unless I tab to that button to make it active. I would like to be
able to press any of the 3 buttons without having to tab. How do I
accomplish this?



  #6   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 208
Default Keydown issue


Still the same error. Weird. The other two work fine. The help file
doesn't help either.

"Jacob Skaria" wrote:

Try the below (untested)


Sub ControlForms(varCode)

If Chr(varCode) = "A" Then
Unload AddOrFind
AddTitle.Show
ElseIf Chr(varCode) = "F" Then
Unload AddOrFind
Search.Show
ElseIf Chr(varCode) = "V" Then
Unload AddOrFind
Summary.Show
End If

End Sub

Private Sub AddButton_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, _
ByVal Shift As Integer)
ControlForms keycode
End Sub

Private Sub FindButton_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, _
ByVal Shift As Integer)
ControlForms keycode
End Sub

Private Sub SummaryButton_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, _
ByVal Shift As Integer)
ControlForms keycode
End Sub

--
If this post helps click Yes
---------------
Jacob Skaria


"Bishop" wrote:

I have a userform with 3 buttons and the following code:

Private Sub AddButton_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, _
ByVal Shift As Integer)

Dim A As Integer

If Chr(KeyCode) = "A" Then
Unload AddOrFind
AddTitle.Show
End If

End Sub


Private Sub FindButton_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, _
ByVal Shift As Integer)

Dim A As Integer

If Chr(KeyCode) = "F" Then
Unload AddOrFind
Search.Show
End If

End Sub


Private Sub SummaryButton_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, _
ByVal Shift As Integer)

Dim A As Integer

If Chr(KeyCode) = "V" Then
Unload AddOrFind
Summary.Show
End If

End Sub

The userform initiates with the first button active. If I press "a" then I
get the desired result. But the other two buttons do no respond to the
keydown unless I tab to that button to make it active. I would like to be
able to press any of the 3 buttons without having to tab. How do I
accomplish this?

  #7   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 82
Default Keydown issue

Bishop

What are you trying to do here?

By the way you might want to look at the Excel VBA help topic on these
events.

KeyCode doesn't return an ASCII/ANSI code.

Note The KeyDown and KeyUp events apply only to forms and controls on
a form. To interpret ANSI characters or to find out the ANSI character
corresponding to the key pressed, use the KeyPress event.




On Jun 29, 8:17*pm, Bishop wrote:
Still the same error. *Weird. *The other two work fine. *The help file
doesn't help either.



"Jacob Skaria" wrote:
Try the below (untested)


Sub ControlForms(varCode)


If Chr(varCode) = "A" Then
* * * * Unload AddOrFind
* * * * AddTitle.Show
ElseIf Chr(varCode) = "F" Then
* * * * Unload AddOrFind
* * * * Search.Show
ElseIf Chr(varCode) = "V" Then
* * * * Unload AddOrFind
* * * * Summary.Show
End If


End Sub


Private Sub AddButton_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, _
ByVal Shift As Integer)
ControlForms keycode
End Sub


Private Sub FindButton_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, _
ByVal Shift As Integer)
ControlForms keycode
End Sub


Private Sub SummaryButton_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, _
ByVal Shift As Integer)
ControlForms keycode
End Sub


--
If this post helps click Yes
---------------
Jacob Skaria


"Bishop" wrote:


I have a userform with 3 buttons and the following code:


Private Sub AddButton_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, _
ByVal Shift As Integer)


Dim A As Integer


* * If Chr(KeyCode) = "A" Then
* * * * Unload AddOrFind
* * * * AddTitle.Show
* * End If


End Sub


Private Sub FindButton_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, _
ByVal Shift As Integer)


Dim A As Integer


* * If Chr(KeyCode) = "F" Then
* * * * Unload AddOrFind
* * * * Search.Show
* * End If


End Sub


Private Sub SummaryButton_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, _
ByVal Shift As Integer)


Dim A As Integer


* * If Chr(KeyCode) = "V" Then
* * * * Unload AddOrFind
* * * * Summary.Show
* * End If


End Sub


The userform initiates with the first button active. *If I press "a" then I
get the desired result. *But the other two buttons do no respond to the
keydown unless I tab to that button to make it active. *I would like to be
able to press any of the 3 buttons without having to tab. *How do I
accomplish this?- Hide quoted text -


- Show quoted text -


Reply
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules

Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
Here is the syntax for TreeView.KeyDown(). [email protected] Excel Programming 0 May 13th 09 03:52 AM
Keydown Problem WLMPilot Excel Programming 4 January 11th 08 04:42 PM
keydown event Peter T Excel Programming 0 April 18th 05 02:03 PM
keydown event K Dales[_2_] Excel Programming 0 April 18th 05 12:46 PM
keydown event jim c. Excel Programming 1 October 10th 03 03:16 AM


All times are GMT +1. The time now is 06:39 AM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Copyright ©2004-2025 ExcelBanter.
The comments are property of their posters.
 

About Us

"It's about Microsoft Excel"