Question: Can I use access 2007 VBA references with impunity (specifically, as far as the base language and old com interfaces are concerned) to develop VBA based solutions for access 2003?

Or is there some new/modified syntax added to the language that I need to be aware of?

Has the object model been enhanced drastically in office 2007?

Any other caveats?

Answer: 
The VBA language itself has not been changed between the recent versions of Microsoft Office (and is probably not going to change in the future either). The version of VBA from Access2000 onwards is VBA6.

The object model of the Office applications however is slighty modified. Microsoft usually only extends the OM by additional methods and properties. As far as Access is concerned, I cannot give you any details but you will find a list of modifications here:

> 
> * [Object Model Changes Since Microsoft Office 2003](http://msdn.microsoft.com/en-us/library/bb243750.aspx) (Access Developer Reference)
> * [New Objects, Collections, and Enumerations](http://msdn.microsoft.com/en-us/library/bb243753.aspx)
> 
> 
> 

In general, VBA solutions developed against a certain version of Office will work with a newer version. The devil lies in the details though. Due to bug fixing and new features the applications might behave *slighty* different than the older version. The only way to find out if everything still works is exhaustive testing.
If you are compiling your accdb/mdb to accde/mde, you want to make sure you compile them in the same version as your main applicaiton. I've had some trouble using Access 2003 MDE's with Access 2007 (and obviously vice versa).