我使用Python打开相当复杂的Excel文件。我已经管理了如何打开电子表格,填充数据和运行宏。问题是,这个宏最终会返回关于结果的消息作为消息框,要求用户点击OK按钮,并且不会继续按下按钮。我需要完全自动执行此过程,因此我需要点击“确定”。来自Python。我怎样才能做到这一点?如果我能从消息框中读取消息,那就太棒了,但没有必要 这是我的代码:
import win32com.client
xl=win32com.client.Dispatch("Excel.Application")
xl.Workbooks.Open(Filename="my_excel.xlsm")
xl.Application.Run("'my_excel.xlsm'!my_macro")
# here I need to click OK, but my code will never reach this place until I'll click it manually
xl.Application.Quit()
答案 0 :(得分:0)
假设您无法更改实际的宏代码,因为它受密码保护(您应该首先说明这一点以避免混淆),我唯一的建议是做一些像这样的“模拟” Controlling mouse with Python