Const HKEY_LOCAL_MACHINE = &H80000002' get the list of ODBC drivers through the registry'' returns a collection of strings, each one holding the' name of a driver, e.g. "Microsoft Access Driver (*.mdb)"'' requires the EnumRegistryValues functionFunction GetODBCDrivers() As Collection Dim res As Collection Dim values As Variant ' initialize the result Set GetODBCDrivers = New Collection ' the names of all the ODBC drivers are kept as values ' under a registry key ' the EnumRegistryValue returns a collection For Each values In EnumRegistryValues(HKEY_LOCAL_MACHINE, _ "SoftwareODBCODBCINST.INIODBC Drivers") ' each element is a two-item array: ' values(0) is the name, values(1) is the data If StrComp(values(1), "Installed", 1) = 0 Then ' if installed, add to the result collection GetODBCDrivers.Add values(0), values(0) End If Next End Function