我在工作簿中有数据连接,我使用VBA刷新它。
sub RefreshData()
ActiveWorkbook.Connections("LoadData1").Refresh
End Sub
代码运行时没有错误,但数据不会更改或更新。但是,当我单步执行代码时,它工作正常,数据也会更新。我也试过做wait
。
sub RefreshData()
ActiveWorkbook.Connections("LoadData1").Refresh
Application.Wait (Now + TimeValue("00:00:20"))
End Sub
我也尝试了ActiveSheet.Unprotect
,Application.ScreenUpdating = True
但无济于事。
答案 0 :(得分:1)
在数据完成刷新之前,我遇到了一些问题。如果我理解正确,那就是你的潜艇发生了什么。如果是这样,您可以尝试添加以下行:
Application.CalculateUntilAsyncQueriesDone
在刷新命令为我工作后,直接将此行添加到我的代码中。
注意:当我将查询设置为后台查询时,我偶尔会遇到奇怪的冻结/崩溃问题;因此,我建议您使用以上代码的任何查询关闭后台查询选项。