首页 > 解决方案 > 通过 Python 运行 Excel 宏而无法更改信任中心设置

问题描述

我正在尝试自动化一个过程,其中一部分涉及从源文件运行基于 Excel 的宏并保存它。

由于我公司现行的安全政策,Excel 的所有信任中心设置都已灰显,这意味着默认宏设置为“禁用所有带有通知的宏”

下面是我尝试运行的代码的摘录。

import win32com.client
xl=win32com.client.Dispatch("Excel.Application")
xl.Workbooks.Open(my_sheet) 
xl.Application.Run(my_sheet + '!Module1.Macro1')

其中 my_sheet 包含 excel 工作表的位置,例如'C:\Users\Desktop\MyFile.xlsm'

现在这返回给我以下错误

The macro may not be available in this workbook or all macros may be disabled.

我的猜测是这是因为宏设置在信任中心策略中被禁用。有没有办法我们可以通过 Python 代码绕过它并允许执行宏?

提前致谢!

标签: pythonexcelvbawin32com

解决方案


推荐阅读