Thread: KeyPress Event
View Single Post
  #5   Report Post  
Posted to microsoft.public.excel.programming
Conrado Capistrano Conrado Capistrano is offline
external usenet poster
 
Posts: 5
Default KeyPress Event

Thanks Ron!


"Ron de Bruin" wrote in message
...
Try to avoid Sendkey Conrado
It is not reliable

Maybe you like this one
It will only allow digits 0 thru 9


Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
Dim i As Integer
If KeyAscii < 48 Or KeyAscii 57 Then
' only allow digits 0 thru 9
KeyAscii = 0
End If
End Sub


--
Regards Ron de Bruin
(Win XP Pro SP-1 XL2002 SP-2)
www.rondebruin.nl



"Conrado Capistrano" wrote in message

...
Hello NG,

Please tell me why the sendkeys statement does not work here in my code.
Also, why is it that when I press backspace it does not trigger the
keypress event even though the help file said that it will trigger the
event.

TIA

Jon-jon


Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
Select Case KeyAscii
Case 48 To 57 'Nos 0 - 9
Exit Sub
Case Else
Application.EnableEvents = False
SendKeys "{BACKSPACE}", True
Application.EnableEvents = True
MsgBox "Please enter numeric character only."
End Select
End Sub