我有这个代码,我刷新了QueryTable:
Sub refreshCD()
ActiveWorkbook.Connections("CD").Refresh
End Sub
如何在刷新完成后显示MsgBox?我试图在刷新之后立即放置它,但显然它在它完成之前运行,因为没有类型的回调或其他东西。
我已经阅读过关于DoEvents()的内容,但我无法理解或应用它,并且不知道这是否是正确的方法。
有什么想法吗?
答案 0 :(得分:1)
你可以创建一个类模块并接收查询表的事件,你可以在刷新之前和之后都有,如此
Private WithEvents qtCustom As QueryTable
Public Function Initialise(qtInput As QueryTable)
Set qtCustom = qtInput
End Function
Private Sub qtCustom_AfterRefresh(ByVal Success As Boolean)
' After Refresh
End Sub
Private Sub qtCustom_BeforeRefresh(Cancel As Boolean)
' Before Refresh
End Sub