1
votes

We created an Excel application using Excel 2013 that connects to an Access 2013 database that's stored on a network drive (all associates have access to). It uses "Microsoft Access Database" connection types for all of the data connections and I have ran the reverse compatibility check in my Excel 2013 and it found no issues. I am also using VBA code to write back to the Access database. All connections are using the Microsoft.ACE.OLEDB.12.0 provider.

The application works flawlessly for anyone using Excel 2013, however, our target audience is a mix of 2010 and 2013, so it needs to work for both.

When a user with 2010 opens the application they first get a prompt: "Do you want to connect to '\\database address.accdb'?"

If you say yes and then proceed to try and connect it gives you an error: "Test connection failed because of an error in initializing provider. Your network access was interrupted. To continue, close the database, and then open again."

I've also tried to create connections in Excel 2010 but this led to connection issues when using 2013.

So in short, we are simply unable to create a universal connection to our Access 2013 database that works for both 2010 and 2013 Excel versions.

The connection string is as follows in each of the data connections:

Provider=Microsoft.ACE.OLEDB.12.0
;User ID=Admin
;Data Source='file name'
;Mode=Share Deny None
;Extended Properties=""
;Jet OLEDB:System database=""
;Jet OLEDB:Registry Path=""
;Jet OLEDB:Engine Type=6
;Jet OLEDB:Database Locking Mode=1
;Jet OLEDB:Global Partial Bulk Ops=2
;Jet OLEDB:Global Bulk Transactions=1
;Jet OLEDB:New Database Password=""
;Jet OLEDB:Create System Database=False
;Jet OLEDB:Encrypt Database=False
;Jet OLEDB:Don't Copy Locale on Compact=False
;Jet OLEDB:Compact Without Replica Repair=False
;Jet OLEDB:SFP=False
;Jet OLEDB:Support Complex Data=False
;Jet OLEDB:Bypass UserInfo Validation=False
;Jet OLEDB:Limited DB Caching=False
;Jet OLEDB:Bypass ChoiceField Validation=False

Any help would be greatly appreciated!

1
Your connection string has Provider=Microsoft.ACE.OLEDB.15.0 ... I'd guess that one is unknown by Office 2010 applications.HansUp
I agree with Hans Up. Try using OLEDB.12 instead.Johnny Bones
I had one 15 in there on accident, made the change and it's still not working.Chris Farr

1 Answers

0
votes

My only resolution that I found was to uninstall Office 2013 and install Office 2010. I then recreated the Access Database in Office 2010 and debugged until it was working.

Office 2010 uses reference "Microsoft Outlook 14.0 Object Library" while 2013 uses "Microsoft Outlook 15.0 Object Library". This resolved some of the bugs but it still didn't resolve the connection issues.

After I recreated the Access in 2010 I simply re-established the connections and this resolved it. Simply put (no-brainer for many) if you want it to work in early versions, dev in early versions.

Thanks for helping.