There are probably no one who uses Excel as a Datasource and hadn’t been haunted by that famous error:
The ‘Microsoft.ACE.OLEDB.12.0’ provider is not registered on the local machine.
or better to say: this, when you try to install that provider:
You cannnot install the 32-bit version of Microsoft Access Database Engine 2016 because you currently have 64-bit Offce products installed. If you nant to install 32-bit Microsoft Access Database Engine 2016, you veill first need to remove the 64-bit installaton of Offce products. After uninstalling the following product(s), rerun setup in order to install 32-bit version of Microsoft Access Database Engine 2016:
Microsoft Access database engine 2010 (English), Office 16 Click-to-Run Extensibility Component
and this is how that haunted message looks like:
Welcome to the club 🙂
It is being suggested in that message that you should either have a fight with your system admin or you have plenty of time to un- and re-install complete Office in order to have the correct/desired version of the provider.
If you are also developing SSIS Packages, you are also probably aware that Visual Studio is an 32 bit application and you will loose the Design-Time support if you decide to continue with the 64-bit version of the Office.
I mean, until today….
Today you will learn how to install both versions in the same machine! And indeed a very easy trick.
(drum roll please!!)
- Open Powershell/Command Prompt
- Locate the Access Database Engine.exe that you want to install
- add “/quiet” switch at the end and execute
- Tadaaaa! That’s it.
Reason is really funny. Error message that you’ve received is caused by the setup bootstrap package which checks if another version of the same product is installed or not. However that “/quiet” swtich prevents it to bark back at you.
Now I have a design time support of Excel files in SSIS and also I can enjoy the benefits of 64-bit Version as well. So… But…
– Is it supported (to have both versions on same machine)?
– I dunnow!
– Does it work anyway?
– Awww f. yes!
Note that: /quiet switch only works for versions Office 2016 and later . For previous versions you might have a look at /passive switch and a registry edit.