well, you might write some code in the subform's Load event to check the day
of the week and set the controls' Tabstop setting. first, open the subform
in Design view, click on the Other tab in the Properties box, and set each
control's Tag property to the appropriate day of the week, as Mon, Tue, Wed,
Thu, Fri, Sat, or Sun. you do *not* need to enclose the text in double
quotes. then add the following code to the subform's Load event procedure,
as
Private Sub Form_Load()
Dim ctl As Control
For Each ctl In Me.Controls
If TypeOf ctl Is TextBox Then
ctl.TabStop = (ctl.Tag = Format(Date, "ddd"))
If ctl.TabStop Then ctl.SetFocus
End If
Next
End Sub
the advantage of the above code is that the cursor is not "forced" to a
particular record/control by user action, it's just the Tabstop property
working as designed, to direct the "flow" in the form. the user is free to
click into another control (column) if desired, with no adverse effects.
having given the above solution, i have to question the design of the table
underlying the subform. storing data in fieldnames, such as the days of the
week, is a violation of normalization principles. suggest you read up/more
on normalization, and then re-examine your table structure for possible
improvements. for more information, see
http://www.accessmvp.com/JConrad/accessjunkie/resources.html#DatabaseDesign101.
hth