To get the conditional formatting, you would need to create a form rather
than editing directly in the table, but that's easy and you can use a form
in Datatsheet view if you want it to look like a table. (To set Conditional
Formatting, open the form in design view, select the text box, and choose
Conditional Formatting on the Format menu.)
The more signicant isssue is that Access does not even track changes at the
record level, let alone at the field level. This means you will have to use
code to log the changes. There are several ways you could do this if you are
comfortable writing VBA code.
One solution would be to log the changes to another table, on a
field-by-field basis. There is a knowledgebase article explaining how to do
this at support.microsoft.com, but the problem with this approach is that it
will require a DLookup() for each field in its Conditional Formatting, and I
imagine performance would be unusable.
To avoid that, you could add another field to your table for every existing
field, to store whether it has changed or not. Performance would be much
better. This will work only if you have fewer than 127 fields in the table
(since 255 is the max number of fields.)
For example, if you have a field named City, you add a Date/Time field named
(say) CityChanged. You then use the AfterUpdate event of the City text box
to set the CityChanged to Now() unless its Value is the same as its
OldValue. You would also need to use the Undo event of the control to set
the value of CityChanged back to CityChanged.OldValue. And in the
Conditional Formatting, you would use:
Expression [CityChanged] Is Not Null
and choose the color you want. Repeat for every field in your form.
If you have fewer than 32 fields in your table, and are absolutely certain
that the table structure will not change (no new fields, no deleted fields,
no reordering of fields), you could get away with just one extra field of
size Long Integer, where each bit tracks whether the corresponding field
changed. The events would be similar to the City example above, but you will
be using binary And and Or operators to set/read/restore the bits in the
bitfield.
--
Allen Browne - Microsoft MVP. Perth, Western Australia.
Tips for Access users -
http://allenbrowne.com/tips.html
Reply to group, rather than allenbrowne at mvps dot org.
"rbiq4" <(E-Mail Removed)> wrote in message
news:47F4BAD2-5212-42CD-91E5-(E-Mail Removed)...
>I am editing and making several changes to a large data base. I would like
> to have a font color change so I can readily see what has been changed as
> I
> will be editing over several months. Any suggestions?