python能在excel运行吗-Python:使用Python运行Excel宏

我需要通过python运行一个Excel宏,我总是会得到以下错误:result = self._oleobj_.InvokeTypes(*(dispid, LCID, wFlags, retType, argTypes) + args)

pywintypes.com_error: (-2147352567, 'Exception occurred.', (0, None, None, None, 0, -2146788248), None)

在Excel中,它会给出以下错误:Run-time error 1004:

Cannot run the macro ". The macro may not be available in this workbook or all macros may be disabled.

我的代码如下:xl=win32.Dispatch("Excel.Application")

wb=xl.Workbooks.Open(Filename="Path+MyExcelFile.xlsm", ReadOnly=1)

xl.Visible = True

time.sleep(1)

ws=wb.Worksheets("Sheet1")

ws.Cells(4,2).Value='Value1'

ws.Cells(5,2).Value='Value2'

ws.Cells(1,8).Value='Bool'

time.sleep(10)

xl.Application.Run("MyExcelFile.xlsm!macroname")

result = ws.Cells(3,10).Value

print result

xl.Application.Quit()

del xl

我通过宏安全性启用了所有宏,但宏不是为特定工作表定义的。当然,如果我在Excel中手动运行宏,它就可以正常工作了

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值