Michael Thompson wrote:
>
> Great. So dynamic dispatch works just fine. Except, of course, I can't
> get the 'constants' and its a bit inefficient, so I tried switching to
> static dispatch:
>
> >>> dispatch = win32com.client.gencache.EnsureDispatch
> >>> xlApp = dispatch('Excel.Application')
> >>> books = xlApp.Workbooks.Open('SomeNew.xls')
>
> But now, when I look at 'books':
>
> >>> books
> <win32com.gen_py.None.Workbook>
>
> which seems to mean 'books' is unusable:
>
> >>> books.WorkSheets('channels')
> Traceback (most recent call last):
> ...
> AttributeError: '<win32com.gen_py.Microsoft Excel 11.0 Object
> Library._Workbook instance at 0x13234048>' object has no attribute
> 'WorkSheets'
>
I've found the problem. Groan. Dynamic and Static dispatch differ WRT to case
sensitivity.
My tests involved this:
>>> books.WorkSheets('channels')
You'll see that I'm incorrectly using CamelCase for 'Worksheets'. Using
Dynamic dispatch I got away with this "case" error, but not with static
dispatch.
--
Mike
_______________________________________________
Python-win32 mailing list
[email protected]
http://mail.python.org/mailman/listinfo/python-win32