You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用win32com打开Excel工作簿时出现Python错误

问题分析与解决:用win32com打开Excel文件失败的问题

嘿,我一眼就瞅出你代码里的问题啦!问题出在打开工作簿的那一行,调用方式搞反了~

你现在写的是excel.Workbooks(r'文件路径').Open(),但实际上Workbooks对象的Open方法是直接接收文件路径作为参数的,正确的调用逻辑应该是调用Workbooks.Open()并传入路径,而不是先以路径为索引去访问Workbooks集合再调用Open。之前的写法相当于在找一个叫这个路径名字的工作簿,这显然不存在,所以才会在打开环节报错。

给你修正后的完整代码:

def open_sheet():
    excel = win32com.client.Dispatch("Excel.Application")
    # 修正Open方法的调用方式,直接传入文件路径给Workbooks.Open()
    wb = excel.Workbooks.Open(r'C:\Users\<username>\Documents\<more file path>\test.xls')
    ws = wb.Worksheets('abc') # 存在名为abc的工作表
    excel.Visible = True

另外给你个小优化提示:既然你的.py文件和test.xls在同一目录下,完全可以不用写冗长的绝对路径,直接用文件名即可,代码会更简洁灵活:

wb = excel.Workbooks.Open('test.xls')

内容的提问来源于stack exchange,提问作者user4396936

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.21 08:04:08