pywintypes.com_error用Python打开Excel

时间:2016-07-05 19:21:31

标签: 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')

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

  

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

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

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

任何想法都会受到赞赏。

2 个答案:

答案 0 :(得分:2)

试试这个:

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 !

希望有帮助..

答案 1 :(得分:0)

您是否尝试过openpyxl,它非常易于使用,读取和写入Excel文件并不麻烦

from openpyxl import Workbook 

并初始化为

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

你可以马上开始阅读和写作