question for Ron de Bruin

J

JT

I'm using the code you previously provided on formatting a
textbox in a form. In my macro, a form displays a
textbox, radio buttons, and push buttons. The textbox is
populated with a phone number. Sometimes the user will
keep the existing number (which is already formatted) and
sometimes they will change it.

I use the following code to format the textbox:

Private Sub TextBox3_Exit(ByVal cancel As
MSForms.ReturnBoolean)

If Not IsNumeric(TextBox3) Or Len(TextBox3) > 10 Then
cancel = True
Me.TextBox3.Text = Format(TextBox3, "000-000-0000")

End Sub

I would like the users to be able to tab through the
form. The problem is they can tab through it until they
get to the text box. The tab is locked until they key in
a phone number.

What I would like to do is let the user tab through the
phone number if they keep the existing number and not
change it. If they change it and keep in 10 new number,
then it should be formatted automatically for them like it
does now. Any suggestions on how we can do this? Thanks
for all of the help.
 
R

Ron de Bruin

Hi JT

Try this then

It will only allow digits 0 thru 9

Private Sub TextBox3_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

Private Sub TextBox3_Exit(ByVal cancel As MSForms.ReturnBoolean)
If Len(TextBox3) = 0 Then Exit Sub
Me.TextBox3.Text = Format(TextBox3, "000-000-0000")
End Sub
 
J

JT

Ron........Thanks a bunch. That is exactly what I was
looking for.....JT
-----Original Message-----
Hi JT

Try this then

It will only allow digits 0 thru 9

Private Sub TextBox3_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

Private Sub TextBox3_Exit(ByVal cancel As MSForms.ReturnBoolean)
If Len(TextBox3) = 0 Then Exit Sub
Me.TextBox3.Text = Format(TextBox3, "000-000-0000")
End Sub


--
Regards Ron de Bruin
http://www.rondebruin.nl


"JT" <[email protected]> wrote in
message news:[email protected]...
 
D

Dave Peterson

See another option at your other post.


I'm using the code you previously provided on formatting a
textbox in a form. In my macro, a form displays a
textbox, radio buttons, and push buttons. The textbox is
populated with a phone number. Sometimes the user will
keep the existing number (which is already formatted) and
sometimes they will change it.

I use the following code to format the textbox:

Private Sub TextBox3_Exit(ByVal cancel As
MSForms.ReturnBoolean)

If Not IsNumeric(TextBox3) Or Len(TextBox3) > 10 Then
cancel = True
Me.TextBox3.Text = Format(TextBox3, "000-000-0000")

End Sub

I would like the users to be able to tab through the
form. The problem is they can tab through it until they
get to the text box. The tab is locked until they key in
a phone number.

What I would like to do is let the user tab through the
phone number if they keep the existing number and not
change it. If they change it and keep in 10 new number,
then it should be formatted automatically for them like it
does now. Any suggestions on how we can do this? Thanks
for all of the help.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Similar Threads


Top