We help IT Professionals succeed at work.


szadroga asked
I have created a pivot file in Excel 2007 on my machine that connects to a MySQL database.  In order to connect to the db i had to download the mysql ODBC driver.  Once downloaded the connection worked fine.  

I wanted to share this excel file with another person (on a different machine) and when they try to refresh the pivot data they get an error message that the ODBC connection failed.  Is there any way of sharing this Excel pivot file without having this person download the mysql ODBC driver file?
Watch Question

Dave BaldwinFixer of Problems
Most Valuable Expert 2014

I doubt it.  They need to have that driver on their computer in order to connect to the database.

You might be able to do this if you make your machine a web server and if you created a page with a  link that would download an updated copy of the file from a web page.  That way only your machine is hitting the database and therefore only your machine would need the odbc driver.

Otherwise, he/she will need an odbc driver.  But once you get past that, you will also have to deal with permissions - is your machine set up to allow others to connect to it, etc.

This is all assuming the database is on your machine, which isn't completely clear from your question.  If the database is on yet a third machine, then you have some additional choices as to how to split the architecture. But the general idea is the same.  If you post the file on a web page, then the user doesn't have to have the odbc driver on their machine.

If you provide some more details, including O/S types and locations of various components, I could give a few more suggestions.


Appreciate the responses.

The database is located on a networked shared server, not my machine.  I believe everyone would be using XP or Windows 7.
Okay, then here are a couple of options:
1.  Put up a web server somewhere.  Then post a web page where he/she can download the file after you have populated it.  In other words, you manually pull the data and then post the file to the web page.  This is only one step better than sending the file via email or similar, but sometimes files are too big to email, etc.

2.  Put up a web server somewhere.  Then post a web page where he/she can download the file, but in this case, the data is pull from the database dynamically, whenever the user needs to access it.  in other words, you set up the web page to pull the data automatically, every time they download the file.  This is more challenging because you need to know some server scripting in order to allow the web page to access the database programmatically.  E.g., php or .NET or  java or.asp pages

Re "Put up a web server somewhere" - this can be on your machine or on some other machine.  If it is not on your machine, then the machine it is on will need an odbc connection if you are using option #2.

Note that putting up a web server and configuring it may be as much work as installing and configuring an odbc connection on your colleague's machine.  But an odbc connection may not always be possible/practical/desirable so the web page approach offers another option.

On the other hand, if there is a company webserver somewhere and if it already has access to the same database, then you are half way there already.

Hope this helps.


thanks for the options