I am aware of one thread on this forum about opening ACE database engine 12 for XLSX - But it is not clear whether that is called from VB6, so I am still posting my issue which I believe to be different.
As part of my app that I am writing, one section has functionality to open XLS /XLSX files in VB6. I am using MS ACE Database engine. I have tried both ACE DB engine 12 and 14 on different PCs. I downloaded the installer from here: http://www.microsoft.com/en-us/download/details.aspx?id=13255
In my VB6 project, I tried but can't seem to set a reference to ACEOLEB.dll as this COM object can't be referenced - I get an error (and don't know what this error is : "UNEXPECTED ERROR OCCURRED IN GO FNF. ERROR IN LOADING DLL." Furthermore, I tried registering the DLL and it does not succeed as this DLL can't be registered. When I run my application and pick an XLSX file (or even an XLS file) I write the connection string as follows:
Provider=Microsoft.ACE.OLEDB.12.0; DATA SOURCE=C:\DB solution\EmailAssignments.XLSX;Extended Properties=\"Excel 12.0;HDR=YES\";
When I try to CONNECT, I get an error: ERRORCODE DB1004 Error -2147467259 : Could not find installable ISAM
Finally I searched Google for this type of error, and found this article on Microsoft support forum : http://support.microsoft.com/kb/283881 , which talks of a DLL MSEXCL40.DLL which has to be registered as the registration may be missing or not registered; but this file applies to Office 2003. I tried their suggestion nonetheless to no avail. My Users will be using Office 2007 or 2010 and my application is in VB6 - all of which doesn't seem to be compatible and I can't seem to open ANY Excel files.
Can anyone help me - - Does the ACE DB engine work at all with VB6? - if this ACE DB engine works with VB6, then can someone assist me to get it going? OR - can someone suggest how I could find the appropriate XLSX driver in a user system and write a DSN "on thE fly" once they picked the XLSX file to use?
I would really appreciate your help. Many Thanks in advance.
Regards Mark