【问题标题】:Have data query automatically refresh if other query is refresehed first如果先刷新其他查询,则自动刷新数据查询
【发布时间】:2019-12-06 18:55:51
【问题描述】:

我有一个包含两个数据查询的工作簿。如果手动刷新第一个查询,我希望自动刷新第二个查询。以下是我目前拥有的 VBA 代码:

Private Sub Worksheet_Change(ByVal Target As Range)

Application.ScreenUpdating = False

Sheets("Sheet2").ListObjects("Query2").QueryTable.Refresh

Application.ScreenUpdating = True

End Sub

上面代码的问题是它试图在第一个查询完成之前刷新第二个查询,这会导致错误。对此问题的任何帮助将不胜感激。

谢谢!

【问题讨论】:

  • “导致错误” - 什么错误?
  • 运行时错误 1004:“Microsoft Excel 正在刷新一些数据。请稍后再试”。

标签: excel vba


【解决方案1】:

默认情况下,Power Query 表会进行后台刷新,这意味着它需要一些时间才能完成加载,具体取决于数据的大小。这里的技巧是禁用后台刷新,它告诉你的宏在执行另一个任务之前完成刷新。

Sheets("Sheet2").ListObjects("Query2").QueryTable.Refresh BackgroundQuery:=False

【讨论】:

    猜你喜欢
    • 2020-08-30
    • 1970-01-01
    • 2012-12-23
    • 2014-04-23
    • 1970-01-01
    • 2023-01-12
    • 2011-07-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多