Excel 2010:使用vba更频繁地刷新外部数据?

时间:2013-09-20 12:08:56

标签: excel vba excel-vba

Excel 2010允许您以最快的设置每分钟刷新一次外部数据源:

数据 - >属性 - >每次刷新

在一分钟内从连接不断更新的最佳vba是什么?理想情况下,我想为每个单独的连接设置刷新率,但刷新全部就足够了。

1 个答案:

答案 0 :(得分:3)

以下方法有效:

在ThisWorkbook中,

Private Sub Workbook_BeforeClose(Cancel As Boolean) 
    On Error Resume Next 
    If Cancel = False Then Application.OnTime dTime, "RefreshIt", , False 
    On Error Goto 0 
End Sub 

Private Sub Workbook_Open() 
    Run "RefreshIt" 
End Sub 

在新模块中,

Public dTime As Date 

Sub RefreshIt() 
    Sheets(1).Range("A1").QueryTable.Refresh 
    dTime = Time + TimeValue("00:00:30") 
    Application.OnTime dTime, "RefreshIt" 
End Sub 

感谢Dave Hawley在以下论坛http://www.ozgrid.com/forum/showthread.php?t=24119