June, thanks for your reply. I think I've figured it out.
To answer your question, I like using recordsets more than linking a form directly to a table. It gives me more control over the transfer of data and it gives me a greater degree of flexibility.
Just in case there are others interested in this issue and resolution, here's what went wrong:
The FillData procedure which pulls data from the table and pushes into the form, was not doing what it should be doing. The issue was not only with "date/time" fields but also with text fields and others.
Here's a sample of the old code (only showing the FillData procedure with one text field and one data field):
Code:
Private Sub FillDatarl()
txtrlbusinessunit.SetFocus
If rrs.Fields.Item("rlbusinessunit") <> 0 Then
txtrlbusinessunit.Text = rrs.Fields.Item("rlbusinessunit")
End If
dterlstartdate.SetFocus
If rrs.Fields.Item("rlstartdate") <> 0 Then
dterlstartdate.Text = rrs.Fields.Item("rlstartdate")
End If
End Sub
It was fixed by changing the code to:
Code:
Private Sub FillDatarl()
txtrlbusinessunit.SetFocus
If rrs.Fields.Item("rlbusinessunit") <> 0 Then
txtrlbusinessunit.Text = rrs.Fields.Item("rlbusinessunit")
Else
txtrlbusinessunit.Text = ""
End If
dterlstartdate.SetFocus
If rrs.Fields.Item("rlstartdate") <> 0 Then
dterlstartdate.Text = rrs.Fields.Item("rlstartdate")
Else
dterlstartdate.Text = ""
End If
End Sub
By not including the "Else" part, I allowed this field to hold onto the value from the previous record and carry it into the next record.
Though you didn't answer my question (which I now realize was not possible to answer based on the information I gave - for which my apologies), you did somehow made me think of it. Thanks for that.