error message: compile error, argument not optional

  • Thread starter Pierre via OfficeKB.com
  • Start date
P

Pierre via OfficeKB.com

Hi,

I have a txt_box in a userform called txt_staf1 where the user can put in a
number for example 2,5 or 25,8.

I have the following code with the txt_box

Private Sub txt_staf1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
OnlyNumbers
rekenen
End Sub

where 'rekenen' is a sub that makes the sheet recalculate.

I check if the input is a number using the sub OnlyNumbers:

Private Sub OnlyNumbers(ctl As Object)
With ctl
If Not IsNumeric(Left(.Value, 1)) And .Value <> vbNullString Then
MsgBox "Sorry, alleen getallen toegestaan", vbOKOnly, "De Pensioen
Adviseur"
.Value = vbNullString
.SetFocus
End If
End With
End Sub

When the user puts in a number i get the error message: compile error,
argument not optional
Does anybody know what is wrong ?
thanks,
Jean-Pierre
 
N

Norman Jones

Hi Jean-Pierre,

Try changing:
Private Sub txt_staf1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
OnlyNumbers
rekenen
End Sub

to:

Private Sub txt_staf1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
OnlyNumbers txt_staf1
rekenen
End Sub
 
P

Pierre via OfficeKB.com

Hi Norman,

thanks for your input...it works !
Strange thing is that i have numerous txt_boxes where i do the same
calculation but not need to add the txt_box name behind the OnlyNumbers sub..
..

Norman said:
Hi Jean-Pierre,

Try changing:
Private Sub txt_staf1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
OnlyNumbers
rekenen
End Sub

to:

Private Sub txt_staf1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
OnlyNumbers txt_staf1
rekenen
End Sub

---
Regards,
Norman
[quoted text clipped - 31 lines]
thanks,
Jean-Pierre
 
D

Dave Peterson

You have an alternative at your first post.

Pierre via OfficeKB.com said:
Hi,

I have a txt_box in a userform called txt_staf1 where the user can put in a
number for example 2,5 or 25,8.

I have the following code with the txt_box

Private Sub txt_staf1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
OnlyNumbers
rekenen
End Sub

where 'rekenen' is a sub that makes the sheet recalculate.

I check if the input is a number using the sub OnlyNumbers:

Private Sub OnlyNumbers(ctl As Object)
With ctl
If Not IsNumeric(Left(.Value, 1)) And .Value <> vbNullString Then
MsgBox "Sorry, alleen getallen toegestaan", vbOKOnly, "De Pensioen
Adviseur"
.Value = vbNullString
.SetFocus
End If
End With
End Sub

When the user puts in a number i get the error message: compile error,
argument not optional
Does anybody know what is wrong ?
thanks,
Jean-Pierre
 

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

Top