【发布时间】:2016-03-16 13:09:34
【问题描述】:
我在 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
【问题讨论】:
-
不确定如何从 Python 中执行此操作,但在 Excel VBA 中,您可以在
Open之前使用Application.DisplayAlerts = False来抑制此类弹出窗口。 -
@JohnColeman 这解决了我的问题,您应该将其发布为答案:)
标签: python excel macros win32com