9

たとえばpywin32でスプレッドシートを開くと、2つのオプションが見つかりました。

excel1 = win32com.client.DispatchEx('Excel.Application')
wb = excel1.Workbooks.Open('myxls.xls')

または私ができる

excel2 = win32com.client.Dispatch('Excel.Application')
wb = excel2.Workbooks.Open('myxls.xls')

これが違いを生むかどうか疑問に思っています。ドキュメントストリングもあまり役に立ちません。

>>> w32.Dispatch.__doc__
'Creates a Dispatch based COM object.\n '

>>> w32.DispatchEx.__doc__
'Creates a Dispatch based COM object on a specific machine.\n  '

このサイトでは、リモート アクセス用である可能性があると示唆しています。DispatchEx

自分の PC でスプレッドシートを自動化しようとしているときに、どちらの方法を使用しても違いはありますか?

4

3 に答える 3

13

それはあなたが望むものに依存します。Excel が既に開いている場合、dispatch を使用すると、開いている Excel インスタンスに新しいタブが作成されます。Excel が既に開いている場合、dispatchEx を使用すると、Excel の新しいインスタンスが開きます。

于 2013-09-08T22:33:31.707 に答える