打开、保存,然后关闭 Python 中的 Excel 个文件

Open, Save, then Close Excel files in Python

我正在尝试遍历大约 300 个 xls 文件。目标是打开、保存,然后关闭每一个。到目前为止我有以下内容:

files = glob.glob("C:/Users/cmoore/Excel Files/*.xls")

xl = win32com.client.DispatchEx("Excel.Application")
xl.DisplayAlerts = False

for wb in files:  
    xl.Workbooks.Open(wb)
xl.Visible = False
xl.Close(wb)
xl.Quit()

问题是它没有循环遍历所有文件。通常有大约 5 个不会被触及。然后我在代码完成后收到以下错误 运行:

"ret = self._oleobj_.InvokeTypes(1923, LCID, 1, (13, 0), ((8, 1), (12, 17), (12, 17), (12, 17), (12, 17), (12, 17), (12, 17), (12, 17), (12, 17), (12, 17), (12, 17), (12, 17), (12, 17), (12, 17), (12, 17)),Filename
pywintypes.com_error: (-2147352567, 'Exception occurred.', (0, 'Microsoft Excel', 'Open method of Workbooks class failed', 'xlmain11.chm', 0, -2146827284), None)"

有什么想法吗?

您在循环内打开文件并在循环外关闭。对于 300 次打开,您有一次关闭。尝试在循环中关闭

在循环内,关闭工作簿而不是 xl 对象。

for wb in files:  
    xl.Workbooks.Open(wb)
    xl.Visible = False
    wb.Close(True)