View Single Post
  #1   Report Post  
Posted to microsoft.public.excel.programming
[email protected] hkbqanda@gmail.com is offline
external usenet poster
 
Posts: 3
Default Application.Ontime help (Excel 2003)

No sure if anyone have the same experience. Basically, I have to use
Application.Ontime to get market data from Bloomberg, and I know
Application.Ontime is the only valid way from what I searched.

Okay, here is the problem :

I have a Bloomberg module using Application.Ontime to control and make
sure I get the market data.

Private Sub StartTimer()
RunWhen_bb = Now + TimeSerial(0, 0, cRunIntervalSeconds_bb)
Application.OnTime earliesttime:=RunWhen_bb,
procedu=cRunWhat_bb, schedule:=True
End Sub

Private Sub StopTimer()
On Error Resume Next
Application.OnTime earliesttime:=RunWhen_bb, procedu=cRunWhat_bb,
schedule:=False
End Sub

.... and I am calling this module/function from another module. My
problem is that it looks like there is no way to make sure the
Bloomberg module is finished before the "on-going" code runs. As I
shown in the following, I used infinite loop and try to make sure I get
Bloomberg data before I proceed. But what I found was that, the
procedure triggered by Application.Ontime function will NOT run, usless
I EXIT THE LOOP...

Sub A()
Dim done As Integer
done = 0
Do While done = 0
If (iRunCnt_bb = 0) Then
' run bb
Call bb_Main
ElseIf (iRunCnt_bb = maxRun_bb) Then
done = 1
End If
Loop

' Code depend on bb_Main....

End Sub

Appreciate if someone can share some experience.