Excel – Using DSN + 32 bit drivers

32-bit64-bitdsnmicrosoft excelmicrosoft-excel-2010

I need some advice as I'm running into a problem and so far I have been unable to find a solution.

We have a set of reports developed in MS Excel that use a DSN file to connect to data sources to retrieve data. These work fine on 32bit and 64bit systems.

However, we are moving to a terminal server environment using Windows 2008 R2 64Bit

The reports fail to run using the DSN's within this environment if we only have the 32bit drivers installed and configured in the ODBC settings. The minute we install the 64bit drivers the software works.

Is there a way or method of getting Excel or the DSN file to NOT use the 64bit driver but force it to use the 32bit driver?

Best Answer

we are moving to a terminal server environment using windows 2008 R2 64Bit.

This per se won't cause you an issue, you have to install the 64-bit version of Microsoft Office 2010. You have to have a good reason for installing the 64-bit version, Microsoft installs the 32-bit version by default on 64-bit machines for a reason - stuff stops working.

Is there a way / Method of getting Excel or the DSN file to NOT use the 64Bit driver, but force it to use the 32bit driver.

No, but for connectivity within Office applications just install the 64-bit version of ACE and make sure your connection strings reference Microsoft Access Driver (*.mdb, *.accdb).

SQL Server and Oracle and a whole host of other common RDBMS' have 64-bit ODBC drivers, so I can't see how between 64-bit ACE and SQL Native Client/ODAC you can't connect to something.

If it still doesn't work, there's a general purpose mechanism for "proxying" x64 -> x86 via SQL Server linked servers in this forum post. Replace Microsoft.Jet.OLEDB.4.0 and other settings (to make it a linked server via ODBC, rather than ODBC) with your ODBC provider as appropriate.

Related Question