Muzz,
I'm a little confused--you have db1 and db2, but then there seem to be two others--1 that they use to 'update, change, adjust, settings on their version of the database which they needed changing', then one where they modify a form using data from another, separate, database. Are either of these db1 or 2, or are they other dbs?
Anyway, one suggestion, if the your example code is the only procedure that needs changing, or if it's typical of what need changing, you can use table values in the code and then the user can change those values (the dates in your example). ie:
Lets say you have a table, table1, with 3 fields, date1, date2 and date3 (it might be better to use one date field, but 3 or more records, but this is easier to explain here)
If Format(Now(), "dd/mm/yy"

<> dlookup("Date1","Table1"

_
And Format(Now(), "dd/mm/yy"

<> dlookup("Date2","Table1"

_
And Format(Now(), "dd/mm/yy"

<> dlookup("Date3","Table1"

Then
MsgBox "This update is only valid on 04/02/2002 to 06/02/2002
End If
Of course there are many ways of making this more efficient, but I'm just showing a broad concept here, not coding technique. So as you can see, either you or the user (you can prevent the user from accessing table1 if need be) can update those dates at will, and the effect of the code will change along with that.
But to change the code itself, I would suggest putting the code in a module, and, for your example with the OnLoad event, have the form's OnLoad event be set to =SomeChangeFunction(), instead of putting the code itself in the form module. Then this function can is in a separate module, say modChange. Then you can set the user's .mdb to automatically import that module from your fresh source .mdb. If you're on a network this fresh source .mdb can sit on the network, if not, you email it to them or get it to them however you currently get changes to them. To import
This code runs in their local .mdb, and lets say your updated .mdb is on the network, \\venus\Dbupdates\update.mdb
dim strDbrem as string, strModname as string
strDbrem = "\\venus\Dbupdates\update.mdb" '(this can be table-driven as well, not hardcoded)
strModname = "modChange" 'this contains the function SomeChangeFunction(), which we're replacing
DoCmd.DeleteObject acModule, strModname 'must delete first before importing new
'Just make sure the module doesn't have any global declarations in it--that messes up the delete/import process
DoCmd.TransferDatabase acImport, "Microsoft Access", strDbRem, acModule, strModname,strModname
Now you've replaced the code itself. So either way--the first way--table-driven, or the second way, importing the Module, can achieve what you need.
--Jim