Home |
Search |
Today's Posts |
#1
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
I have cobbled together Chip Pearson's code for running an macro queries of
Yahoo Finance for stock data (code also borrowed). Here's the basic structure so far: Public RunWhen As Double Public Const cRunIntervalSeconds = 120 ' two minutes Public Const cRunWhat = "GetData" ' the name of the procedure to run Sub StartTimer() RunWhen = Now + TimeSerial(0, 0, cRunIntervalSeconds) Application.OnTime EarliestTime:=RunWhen, Procedu=cRunWhat, Schedule:=True End Sub Sub GetData() <my code StartTimer End Sub There is also another generic piece of code courtesy of Mr. Pearson: Sub StopTimer() On Error Resume Next Application.OnTime EarliestTime:=RunWhen, Procedu=cRunWhat, Schedule:=False End Sub ...but it is not currently being called. I want to 1) GetData (see above) between 9:00 and 15:30 daily only (this spreadsheet will reside on a dedicated computer, hopefully always on), and 2) perform other macros at, say, 8:30 and 16:00 daily. I am uncertain how these last two items get coded. Any help appreciated. |
#2
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Public RunWhen As Double
Public Const cRunIntervalSeconds = 120 ' two minutes Public cRunWhat As String ' the name of the procedure to run Sub StartTimer() RunWhen = Now + TimeSerial(0, 0, cRunIntervalSeconds) If RunWhen - Int(RunWhen) = TimeSerial(8, 30, 0) And _ RunWhen - Int(RunWhen) <= TimeSerial(16, 0, 0) Then cRunWhat = "GetData" Else cRunWhat = "StartTimer" End If Application.OnTime EarliestTime:=RunWhen, _ Procedu=cRunWhat, _ Schedule:=True End Sub Sub GetData() MsgBox "hello" '<my code StartTimer End Sub Sub StopTimer() On Error Resume Next Application.OnTime EarliestTime:=RunWhen, _ Procedu=cRunWhat, _ Schedule:=False End Sub -- --- HTH Bob (there's no email, no snail mail, but somewhere should be gmail in my addy) "John V" wrote in message ... I have cobbled together Chip Pearson's code for running an macro queries of Yahoo Finance for stock data (code also borrowed). Here's the basic structure so far: Public RunWhen As Double Public Const cRunIntervalSeconds = 120 ' two minutes Public Const cRunWhat = "GetData" ' the name of the procedure to run Sub StartTimer() RunWhen = Now + TimeSerial(0, 0, cRunIntervalSeconds) Application.OnTime EarliestTime:=RunWhen, Procedu=cRunWhat, Schedule:=True End Sub Sub GetData() <my code StartTimer End Sub There is also another generic piece of code courtesy of Mr. Pearson: Sub StopTimer() On Error Resume Next Application.OnTime EarliestTime:=RunWhen, Procedu=cRunWhat, Schedule:=False End Sub ..but it is not currently being called. I want to 1) GetData (see above) between 9:00 and 15:30 daily only (this spreadsheet will reside on a dedicated computer, hopefully always on), and 2) perform other macros at, say, 8:30 and 16:00 daily. I am uncertain how these last two items get coded. Any help appreciated. |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
![]() |
||||
Thread | Forum | |||
Help with Application.OnTime | Excel Programming | |||
Application OnTime...need some help to schedule. | Excel Programming | |||
application.ontime | Excel Programming | |||
OnTime Unusual Application | Excel Programming | |||
Application.OnTIme | Excel Programming |