When you open Microsoft Access 2007, it changes the following registry key to point to the Access 12 Object Library:
[HKEY_USERS\S-1-5-21-680354291-1286354565-1361462980-1003\Software\Classes\TypeLib\{4AFFC9A0-5F99-101B-AF4E-00AA003F0F07}\9.0\win32]
@="C:\\Program Files\\Microsoft Office\\Office12\\MSACC.OLB"

On a Windows XP or Windows 2003 machine, when you open Microsoft Access 2003, the Office 2003 Installer sets the key back to:

[HKEY_USERS\S-1-5-21-680354291-1286354565-1361462980-1003\Software\Classes\TypeLib\{4AFFC9A0-5F99-101B-AF4E-00AA003F0F07}\9.0\win32]
@="C:\\Program Files\\Microsoft Office\\Office11\\MSACC.OLB"

On a Windows Vista machine, the Office 2003 Installer does NOT set the key back to the correct value (leaves it pointing to Office12).  If you then try to open any Access 2003 form you end up with the error: “Object or Class does not support the set of events"

(Note: I later discovered that the installer seems to set the reference back on 32-bit Windows, but not on 64-bit Windows).

To solve the problem you have to manually point the registry key back to the Office 11 version of the file.

Microsoft’s official response on this issue is to create a .reg file with the correct version of the key, and manually run it before opening Access 2003 after you’ve been in Access 2007.

They also gave me this link with generic information about running multiple versions of Access on the same machine: KB 870961 Description of how to run multiple versions of Microsoft Access with Access 2003  http://support.microsoft.com/default.aspx?scid=kb;EN-US;870961

Advertisements