On 7/5/2012 12:22 AM Maurizio Spadaccino said...
Hi all

I'm new to Python but soon after a few days of studying its features I
find it my favourite mean of programming scripts to allow for data
storing and mining. My idea would be to inplement python scripts from
inside an excel sheet that would store and fetch data from a Mysql
database.

Look again at the com interface -- I've created excel commands implemented entirely in python this way and it will do everything you're looking for. Just start with some of the examples and extend from there.

See http://oreilly.com/catalog/pythonwin32/chapter/ch12.html

I did this ten years ago so things have likely changed, but the bits of the python script that set up com then looked like this:


class fenxUtilities:
    _public_methods_ = [ 'FirstPartInsp' ]
    _reg_progid_ = "fenxDCom.Util"
    _reg_clsid_ = "{3EAD7AB4-2978-4360-8F7D-33FB36E9E146}"
    def FirstPartInsp(self,nomDiam, numFlutes, nomOAL, nomLOC):
        return EMSpecs(nomDiam, numFlutes, nomOAL, nomLOC).retvals


if __name__=='__main__':
    print "Registering COM server..."
    import win32com.server.register
    win32com.server.register.UseCommandLine(fenxUtilities)


HTH,

Emile




So i need the script to be launched, say, by pressing a button
in excel and, for instance, retrieve immediately data from the mysql
table. For what I found in the net, it seems there are three ways to
control python from excel:
1) run my python script via shell using the Run command in VBA, which
seems to me the easiest (but maybe slower?) way;
2) creating a COM server, for which I need more training since it doesnt
appear that easy;
3) via Microsoft Script Control, for which I saw some example around
where It looks like I can 'simulate' a python shell via the
'executeStatement' command.

What would you suggest would be the more performing way to achieve my
goals as described above?

Thanks for you help
Maurizio


--
Maurizio


www.mauriziospadaccino.com <http://www.mauriziospadaccino.com>
---------------
If you can avoid printing this e-mail, you are only doing good for our
planet.




--
http://mail.python.org/mailman/listinfo/python-list

Reply via email to