Clear a field - Set focus

R

Richo

I have not used Access for a few years and first time on 2007, however my
issue is that when I have saved some text fields on a screen I want to clear
the fields. If I use the below code

Me.num_meal_number.SetFocus
Me.num_meal_number.Text = " "
Me.txt_meal_name.SetFocus
Me.txt_meal_name.Text = ""

Or from a module

Forms!frm_create_meal!num_meal_number.SetFocus
Forms!frm_create_meal!num_meal_number.Text = " "
Forms!frm_create_meal!txt_meal_name.SetFocus
Forms!frm_create_meal!txt_meal_name.Text = " "

I get an error # 2110 saying that can not move the focus to the first control.
Must be a simple answer to this........
 
A

Allen Browne

No need to SetFocus. Just set the Value of the control rather than its Text.
(VBA in Access is different from pure VB, since the controls are
data-centric.)

Also, you want to set the controls to Null, not to a zero-length string.
There's a significant difference.

So:
Me.num_meal_number = Null
Me.txt_meal_name.Text = Null

If this is a bound form, perhaps you are wanting to leave this record the
way it is, and go to a new record? If so, use:
If Me.Dirty Then Me.Dirty = False
If Not Me.NewRecord Then RunCommand acCmdRecordsGotoNew
 
R

Richo

Thanks for that, it works.
--
Regards

Richo


Allen Browne said:
No need to SetFocus. Just set the Value of the control rather than its Text.
(VBA in Access is different from pure VB, since the controls are
data-centric.)

Also, you want to set the controls to Null, not to a zero-length string.
There's a significant difference.

So:
Me.num_meal_number = Null
Me.txt_meal_name.Text = Null

If this is a bound form, perhaps you are wanting to leave this record the
way it is, and go to a new record? If so, use:
If Me.Dirty Then Me.Dirty = False
If Not Me.NewRecord Then RunCommand acCmdRecordsGotoNew
 

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