I should have posted something on this a long time ago as it is a common error that people experience. This error shows up in two different scenarios.
In one case it is when using Excel to connect to a workbook:
The reason you get this error is that the version independent progid for MSOLAP is set to MSOLAP.4 (SQL 2008) (MSOLAP is the oledb library for Analysis Services also sometimes referred to as ASOLEDB). This happens usually for 1 of 2 reasons:
1) You never installed the newer libraries or
2) You installed them but after installing them, you installed Office 2010 (or some other product which brings with it the 2008 libraries). There was a bug in 2008 libraries that would incorrectly overwrite the version independent progid even if it was at a later version (ie MSOLAP.5).
The other time you might see this error is in a ULS log after getting a ubiquitous error about failing to connect to external connection ‘Data’ in XLViewer (Excel Service UI page). This is caused by the same issue:
1) You never installed the libraries (http://msdn.microsoft.com/en-us/library/ee210608.aspx) on the ECS box (you have a mutli-machine farm and PowerPivot was not installed on all of the ECS machines)
2) After installing SharePoint (and configuring PowerPivot) you installed Office 2010 on the server which overwrote the version independent progid. This is more common here than in case #1 as people build single box demo machines.
In both cases, you can verify by looking in the registry
If you look at HKEY_CLASSES_ROOT\MSOLAP\CurVer you should see MSOLAP.5 (this is SQL 2012). If you see MSOLAP.4, look to see if MSOLAP.5 exists as a registered class (you can see it in the screen shot). If it does, and you want to “fix it quick”, you can simply update the CurVer “(Default)” value and set it to MSOLAP.5 and also update the associated HKEY_CLASSES_ROOT\MSOLAP\CLSID and set it to the same value as HKEY_CLASSES_ROOT\MSOLAP.5\CLSID. Version Independent Progids are just a way to discover the last version of a component when trying to create it (you can read more online if you want). If you don’t have .5 installed or don’t feel comfortable with what I described above, you can simply re-install the SQL 2012 version of MSOLAP (this page (http://msdn.microsoft.com/en-us/library/ee210608.aspx) should have a link on where to install from).
SIDENOTE: SQL Server 2008 R2 was a “dot” release (10.5) and so the version of MSOLAP which shipped with it, 10.5, was still called MSOLAP.4 (and that version supported PowerPivot datasouces). Hence, it is possible your system is working fine with MSOLAP.4 (although I doubt you are reading this blog post if you system is running fine). To feel really confident about what version of MSOLAP.4 is installed on the machine, I always simply look at the version associated with the dll in the Program Files (or Program Files(x86) directory). 10.0.xxxx.x is SQL 2008. 10.5.xxxx.x is SQL 2008 R2. Like I said, I don’t think this really will affect people reading this post, but I add it for information