pywintypes.com_error用Python打开Excel

我有下面的脚本是从这里模仿( http://pythonexcels.com/python-excel-mini-cookbook/ ):

import win32com.client as win32 excel = win32.gencache.EnsureDispatch('Excel.Application') wb = excel.Workbooks.Open('words.xlsx') 

并返回以下错误(完整回溯)

Traceback(最近一次调用的最后一个):在wb = excel.Workbooks.Open('words.xlsx')中的文件“”中,第1行文件“C:\ Python35 \ lib \ site-packages \ win32com \ gen_py \ 00020813- 0000-0000-C000-000000000046x0x1x7 \ Workbooks.py“,第78行,打开,转换器,AddToMru,本地,CorruptLoad)pywintypes.com_error:(-2147352567,'Exception occurred。',(0,'Microsoft Excel' 'words.xlsx'找不到。请检查文件名称的拼写,并确认文件位置是否正确。\ n \ n如果您尝试从最近使用的文件列表中打开文件,请确保该文件尚未被重命名,移动或删除。“,”xlmain11.chm“,0,-2146827284),None)

当我使用openpyxl的函数打开工作簿时,没有问题(引用https://automatetheboringstuff.com/chapter12/ )。 python文件和excel文件在一起在同一个文件夹中。 我是不恰当地打电话吗?

我确定该文件拼写正确(words.xlsx),并且它与python文件在同一个文件夹中。

任何想法将不胜感激。

尝试这个:

 import win32com.client as win32 import os excel = win32.gencache.EnsureDispatch('Excel.Application') path = os.getcwdu().replace('\'','\\') + '\\' wb = excel.Workbooks.Open(path+'words.xlsx') 

除了path错误,不是modulesystem错误。

'xlmain11.chm'是空的,所以不需要这个。

path-string上使用转义字符时要小心。 Script and work file in same directory !

希望有帮助..

你有没有尝试openpyxl,这是非常容易使用,读写excel文件没有任何问题

 from openpyxl import Workbook 

并初始化为

 wb = Workbook() ws = wb.active() 

你可以开始阅读和写作了