How do I set focus

  • Thread starter Thread starter Newbie
  • Start date Start date
N

Newbie

Hi,

I have a userform with a textbox and the following in the AfterUpdate event:

If Not IsNumeric(Me.txtBill.Value) Then
MsgBox "This needs to be a number", vbExclamation, "Input Error"
Me.txtBill.Value = ""
Me.txtBill.SetFocus

However this does not set the focus back to the txtBill

What am I doing wrong?
Thanks
 
Thanks - works a treat!
Beto said:
You should put your code in the BeforeUpdate event and set Cancel to
TRUE if the condition of exit is not met.

Ex:

Private Sub txtBill_BeforeUpdate(ByVal Cancel As MSForms.ReturnBoolean)
If Not IsNumeric(Me.txtBill.Value) Then
MsgBox "This needs to be a number", vbExclamation, "Input Error"
Me.txtBill.Value = ""
Cancel = True
End If
End Sub

Regards,
 
Newbie said:
Hi,

I have a userform with a textbox and the following in the AfterUpdate event:

If Not IsNumeric(Me.txtBill.Value) Then
MsgBox "This needs to be a number", vbExclamation, "Input Error"
Me.txtBill.Value = ""
Me.txtBill.SetFocus

However this does not set the focus back to the txtBill

You should put your code in the BeforeUpdate event and set Cancel to
TRUE if the condition of exit is not met.

Ex:

Private Sub txtBill_BeforeUpdate(ByVal Cancel As MSForms.ReturnBoolean)
If Not IsNumeric(Me.txtBill.Value) Then
MsgBox "This needs to be a number", vbExclamation, "Input Error"
Me.txtBill.Value = ""
Cancel = True
End If
End Sub

Regards,
 

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

Back
Top