Aktualisieren der BDH ist nach der Aktualisierung Blatt. Bloomberg. Vba
Sehe ich ein paar alte Sachen über diese, aber ich hoffe jemand hat eine neue Lösung gefunden.
mit meiner routine, ich aktualisiere die Termine in 3 Arbeitsmappen, so dass die BDH-Befehle erhalten Sie die neuesten Preise, dann kopiere ich die Ergebnisse aus diesen 3 Arbeitsmappen in einer separaten Zusammenfassung Arbeitsmappe. Jedoch, wie Häufig offenbar, Die BDH-Funktion nicht aktualisieren/aktualisieren, auch nach ein timepause dort.
Was sind die neuesten Erkenntnisse aktualisiert oder neu-Beantragung der BDH-Befehle, bevor ich die Kopie einfügen, um die Ergebnisse Blatt?
===========
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
Du musst angemeldet sein, um einen Kommentar abzugeben.
Müssen Sie die Anwendung verwenden.Pünktlich um dies zu erreichen. Bloomberg Formeln werden nicht aktualisiert, während ein makro wird angehalten. Es gibt Beispiele in den FAQ-Bereich auf WAPI auf Bloomberg. Die unten ist von dort entnommen, wo finden Sie auch eine Beispiel-Tabelle.
[Download-Beispiel! Download eine funktionierende Excel-VBA-Beispiel hier]
Die zurückgegebenen Daten durch unsere BX () - Funktionsfamilie ist in einer asynchronen Weise. Deshalb, wenn Sie Ihre Excel-VBA-Anwendung [makro] wird abhängig zurückgegeben Bloomberg-Daten, empfehlen wir Ihnen, übernehmen Sie den folgenden Code in Ihre VBA-code, der, im wesentlichen, unterbrechen Sie Ihre Anwendung, während die Daten aufgefüllt, die in Ihren Excel-Zellen:
Den oben genannten code Hinzugefügt werden kann, um ein leeres Modul ein und folgenden code Hinzugefügt werden, um das click-event-handler, z.B. von einer Schaltfläche auf dem Arbeitsblatt:
fillFormula