Connecting to Python COM server from Excel VBA does not work

diego ernst.karner at gmail.com
Thu Dec 10 04:50:09 EST 2009


I ran this script:
---------------------------
class Example(object):
    _public_methods_ = ['Add','Mul']
    _reg_progid_ = 'MyPython.Example'
    _reg_clsid_ = '{E39ECD8C-7FAF-48B0-B914-1202319499D4}'

    def Add(self,a,b): return a+b

    def Mul(self,a,b): return a*b

if __name__ == '__main__':
    import win32com.server.register
    win32com.server.register.UseCommandLine(Example)
---------------------------------
connecting to this COM server works with following VBS-script:
---------------------------------
Set ex = CreateObject("MyPython.Example")
msgbox ex.Add(1, 2)
---------------------------------

when i run following VBA script in excel
---------------------------------
Sub Testit()
    Set ex = CreateObject("MyPython.Example")
    MsgBox ex.Add(1, 2)
End Sub
---------------------------------

i get the error:
Run-time error '-2137024770 (8007007e)':
Automation error
The specified module could not be found



Any ideas what the problem could be?
Already searched a long time for solutions but did not find any....

thanks,
diego



More information about the Python-list mailing list