Your evaluation of your problem is spot on.
The simple solution here is to simply force a disk write of the form in
question BEFORE you run the sql, and the problem goes away.
eg:
if me.dirty = true then
me.Dirty = false
end if
-- you sql update code etc. goes here.....
If the records is in a sub form, and your code running from the main form,
in most cases MS access automatically forces a disk write when the focus
changes from the sub form to the main form -- thus this should not present a
problem for you. However in case this is a problem, you could do the
following:
the following the code assumes that you're running in the main form, and a
sub form is giving you a dirty team record problem
if me.mySubFormName.form.Dirty = true
me.mySubFormName.Form.dirty = false
end if
... you sql update + recordset code, or whatever goes here....

Signature
Albert D. Kallal (Access MVP)
Edmonton, Alberta Canada
pleaseNOOSpamKallal@msn.com
John Keith - 29 Feb 2008 18:58 GMT
It was the Main form that needed the "cleaning" :)
I had put me.dirty=false AFTER the run SQL which was why I had the issue.
Works perfectly now.

Signature
Regards,
John
> Your evaluation of your problem is spot on.
>
[quoted text clipped - 23 lines]
>
> .... you sql update + recordset code, or whatever goes here....