Asp updating access check box
That shortcut makes this procedure easier to implement.
After all, you don't really need to maintain data types for auditing purposes. Print statement allows you to see the evaluated INSERT INTO statement in the Immediate window.
As is, the procedure tracks only changes to text box and memo controls.
If you need to track changes in other types of controls, change that If statement to a Select Case in the form adding all the controls necessary: You probably noticed that the procedure passes old and new values as strings, regardless of their data type.
You don't need individual tables for each data entry form or each data table. You probably won't want to remove any of the example table's fields, but you might want to add a few new ones. Use a single-field natural primary key or an Auto Number field for this purpose.
The easiest way to keep users out of the Audit table is to move it to a secure backend and link to it. You can alter the example table to suit your needs. The call passes two object variables to Audit Trail(): the form as a Form object and the control that contains the data that uniquely identifies the record, as a Control object. Shipper ID is the Shippers table's primary key (and is an Auto Number field).
You might want to keep an audit trail of data input changes.
In other words, you might want to know who's changing data and when.
If the values are the same, there's no change to track, and VBA skips to the next control.
When the values differ, the procedure executes an INSERT INTO statement that adds a new record to the Audit table, tracking that change.