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

时间:2016-03-16 13:09:35

标签: python excel macros win32com

我在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

Popup image

1 个答案:

答案 0 :(得分:1)

Excel Application对象具有DisplayAlerts属性,可以设置为False。我不确定从Python调用它的确切语法,但是

xlApp.DisplayAlerts = False
行前

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

应该禁止弹出窗口。