View Single Post
  #3   Report Post  
Posted to microsoft.public.excel.programming
SailFL SailFL is offline
external usenet poster
 
Posts: 6
Default TextBox problem in a UserForm

I appreicate the input but I think I want to use Modal MsgBox. I will key
your other suggestion in mind but I hope someone will have a solution. If I
have to I will remove the MsgBox all together.
Thanks
--
SailFL


"Bob Phillips" wrote:

This is true if the form is shown modeless, and I cannot see a way around
it.

Maybe take the message out of the exit event (dodgvy place anyway as it cann
get called when you don't want) and align it to a commandbutton, or perhaps
trap for numeric input on keypress

Private Sub TextBox130_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
Select Case KeyAscii
Case 48 To 57
Case Else
KeyAscii = 0
End Select
End Sub

--

HTH

RP
(remove nothere from the email address if mailing direct)


"SailFL" wrote in message
...
I am having a problem with a TextBox in a UserForm.

Private Sub TextBox130_Exit(ByVal Cancel As MSForms.ReturnBoolean)

Dim MyPrompt As String
MyPrompt = "Please input a Number!"

If IsNumeric(TextBox130.Value) Then

TextBox130.Value = Round(TextBox130.Value, 0)
JobArea(0).SqFt = TextBox130.Value
Call UpdateSqFtTotal

Else
Cancel = True
TextBox130.Text = ""

MsgBox MyPrompt, vbInformation, "Pro Paver Installer Data Input"

End If

End Sub

The problem I am having is that when a character is entered and after you
click OK on the MsgBox there is no cursor in TextBox130. There is no

cursor
on the UserForm. If you type, nothing appears on the UserForm. If you

hit
enter after typeing, the MsgBox appears but nothing is displayed in the
TextBox130. If you place the mouse pointer in another textbox and click,

the
MsgBox appears. I have tryed placing TextBox.SetFocus before and after

the
MsgBox but that does not help.
For TextBox130 this is the only code that is active.

If you remove the MsgBox from the code the code works correctly. But I
would like to display a message if the incorrect data is entered.

I am using Excel 2000. I have been at other forms and people tell me the
code works for them. What else could be wrong with my code?

Thanks for any help.
--
SailFL