使用 pywin32 刷新 Excel 被弹出窗口破坏

Refreshing Excel with pywin32 is broken by pop up

我有一个 Python 脚本,它每 15 分钟刷新一次 Excel 文件。这些文件连接到 Analysis Services,因此简单的“全部刷新”就可以进行刷新。为了在 Python 上实现自动化,我使用了 pywin32 库。

import win32com.client
xlapp = win32com.client.gencache.EnsureDispatch("Excel.Application")
wb_7 = xlapp.Workbooks.Open(excel_str_path)
wb_7.RefreshAll()
xlapp.CalculateUntilAsyncQueriesDone()
wb_7.Save()
wb_7.Close(True)

但是,我偶尔会遇到分析服务弹出窗口的问题。是这样的:

因此,当此消息弹出时 - Python 脚本正在等待“全部刷新”完成,但从未发生过。结果 - 脚本已死,并且在手动关闭此弹出窗口之前不执行任何操作。

处理此问题的最佳方法是什么?

到目前为止,我没有找到任何使用 Python 解决此问题的解决方案。所以我使用了 Power Automate 脚本,它每 30 秒检查一次屏幕并在找到它时关闭它 window。