【发布时间】:2017-04-21 17:15:40
【问题描述】:
在 Excel 2016 VBA 中,我正在刷新几个这样的查询:
MyWorkbook.Connections(MyConnectionName).Refresh
代码完成后,没有遇到任何错误,我看到大多数查询的沙漏图标仍在旋转几秒钟。
是否可以在所有刷新完成后检查是否成功?我担心我的代码不会知道在代码完成之后但在查询完成刷新之前是否发生错误。
顺便说一句,我不想执行 RefreshAll,因为某些查询依赖于其他查询(将它们用作源)。我以一定的顺序刷新它们,以便在它们依赖的查询之后刷新依赖的查询。
更新:
我看到 Connection 对象有一个只读的 RefreshDate 属性,乍一看似乎可以用来做这个检查:
MyWorkbook.Connections(MyConnectionName).OLEDBConnection.RefreshDate
但是,它似乎没有设置好。我在尝试检查时遇到错误。如果我将 Variant 变量设置为 RefreshDate 属性,则该变量显示为“空”。源是 SQL Server 数据库。
【问题讨论】:
标签: vba excel powerquery