1
我看到这里有一些旧东西,但我希望有人找到了新的解决方案。更新工作表后刷新BDH。彭博。 Vba
与我的套路,我更新3个工作簿的日期,使BDH命令获取最新的价格,然后我从这些工作簿3的结果复制到一个单独的总结工作簿。但是,正如常见的那样,BDH功能不会刷新/更新,即使在那里有时间滞留。
有什么最新的调查结果刷新或重新请求BDH命令之前,我复制并粘贴到结果表?
===========
Twenty.Worksheets("Portfolio_2016").Activate
[K3].Value = TradeDay
[L3].Value = PrevTradeDay
'Japan.Worksheets("Portfolio_2016").Activate
'[K3].Value = TradeDay
'[L3].Value = PrevTradeDay
'AAR.Worksheets("Portfolio_2016").Activate
'[K3].Value = TradeDay
'[L3].Value = PrevTradeDay
Call RefreshStaticLinks
End Sub
Public Sub RefreshStaticLinks()
Call Twenty.Worksheets("Portfolio_2016").Range("K7:Q26").Select
Call Application.Run("RefreshCurrentSelection")
Call Application.OnTime(Now + TimeValue("00:00:01"), "ProcessData")
End Sub
Private Sub ProcessData()
Dim c As Range
For Each c In Selection.Cells
If c.Value = "#N/A Requesting Data..." Then
Call Application.OnTime(Now + TimeValue("00:00:01"), "ProcessData")
Exit Sub
End If
Next c
Call CopyPaste
End Sub
上找到WAPI是帮助线程。 Cheerss。 – Ken
得到它为一个工作簿工作。但是,我需要刷新所有3个工作簿。这使得使用“refreshcurrentselection”相当枯燥的工作。 任何方式我可以从所有3个工作簿中选择一次,然后更新? – Ken
如上更新。以K3 = tradeday更新日期,L3 = Prevtradeday,然后刷新BDH选择。 但后来我需要它做了3个或4个工作簿 – Ken