从 python 调用宏时如何停止弹出

How to stop pop when calling macro from python

我在 excel 文件中有宏代码,我使用 python 代码调用此宏,但每次我调用此代码时,它都会给我弹出窗口(下方),我希望避免将其作为代码从远程计算机执行,用户无法访问 excel 文件弹出窗口。

代码:

import win32com.client
def insert_column():
        fName= 'F:\Reports\Logs\PERF_RESULTS.xlsm'
        xlApp = win32com.client.Dispatch("Excel.Application")
        fTest = xlApp.Workbooks.Open(fName,ReadOnly=1)
        macName = fTest.Name + '!' +'Insert_Column'
        xlApp.Application.Run(macName)
        xlApp.Application.Save()
        xlApp.Application.Quit()
        xlApp = None

Excel Application 对象有一个 DisplayAlerts 属性 可以设置为等于 False。我不确定您在从 Python 调用它时会使用的确切语法,但类似于

xlApp.DisplayAlerts = False

先行

fTest = xlApp.Workbooks.Open(fName,ReadOnly=1)

应该禁止该弹出窗口。