Python 2.7 win32com.client将工作表从一个工作簿移动到另一个工作簿

2024-05-20 22:58:01 发布

您现在位置:Python中文网/ 问答频道 /正文

我正试图使用Python2.7将一个excel工作表从工作簿A移动到工作簿B,但始终出现错误。

Python脚本:

import win32com.client

excel=win32com.client.Dispatch('Excel.Application')
excel.Visible=False
wbP=excel.Workbooks.Open('C:\Full Path\WorkbookA.xlsx')
wbG=excel.Workbooks.Open('C:\Full Path\WorkbookB.xlsx')
wbG.Worksheets("Sheet1").Select
wbG.Worksheets("Sheet1").Move(before=wbP.Worksheets("Annual"))
wbP.SaveAs('C:\Full Path\WorkbookA.xlsx')
excel.Application.Quit()

我收到的错误:

Traceback (most recent call last):
  File "C:\Full Path\test.py", line 10, in <module>
    wbG.Worksheets("Sheet1").Select
  File "C:\Python27\lib\site-packages\win32com\gen_py\00020813-0000-0000-C000-000000000046x0x1x8\Sheets.py", line 120, in __call__
    ret = self._oleobj_.InvokeTypes(0, LCID, 2, (9, 0), ((12, 1),),Index
com_error: (-2147352567, 'Exception occurred.', (0, None, None, None, 0, -2147352565), None)

谢谢你!

解决方案:

见伯尼的评论。我需要移动的工作表名为“图表”而不是“工作表1”。


Tags: pathpyclientnoneapplication错误xlsxexcel