Microsoft has upgraded the Data Access Object (DAO) to version 3.5. If your application uses DAO 3.0, you may still reference it. Because DAO 3.5 is designed to work well with applications designed for DAO 3.0, you will not be required to reference the newer version. Of course, applications written in Microsoft Excel 97 with a reference to DAO 3.5 will not reference DAO 3.0 if saved in Microsoft Excel 95 format.
If DAO 3.0 is not installed, then Microsoft Excel 97 will default to DAO 3.5. You will want to ensure that users of your applications have the appropriate installation of DAO, as there is functionality that is specific to each.
Objects in DAO 3.5 are named slightly differently than their equivalents in DAO 3.0. For example: the DBEngine in DAO 3.0 is referred to as DAO.DBEngine while in DAO 3.5 it is DAO.DBEngine.35. The best way to ensure application portability is to avoid using CreateObject in either Microsoft Excel 95 or Microsoft Excel 97.
Although named arguments were never supported by DAO, in some cases they would work. We discouraged the use of this practice, but there may be code that works in Excel 95 that uses named arguments with DAO, so you cannot be sure that these arguments will be correctly identified. For example, this working Microsoft Excel 95 code:
Set dbTest = DBEngine.OpenDatabase(Name:="C:\My Documents\MyDB.mdb", _
Exclusive:=False, _
ReadOnly:=False) 'Note that the second argument has changed
Should become the following in Microsoft Excel 97:
Set dbTest = DBEngine.OpenDatabase(Name:="C:\My Documents\MyDB.mdb", _
Options:=dbDriverComplete, _
ReadOnly:=False) 'Note the corrected argument