ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   Running a macro every half hour (https://www.excelbanter.com/excel-programming/296205-running-macro-every-half-hour.html)

Scott

Running a macro every half hour
 
If I want to run a macro every half hour, do I use the
OnTime method? This is what I have tried:

Dim KeepingTime As Boolean
Dim Times As Long

Times = 10

KeepingTime = True

Do While KeepingTime = True

Application.OnTime Now + TimeValue
("00:30:0"), "GetAll"

Times = Times - 1

If Times < 1 Then
KeepingTime = False
End If
Loop

Scott

Rob van Gelder[_4_]

Running a macro every half hour
 
I have an example on my website


--
Rob van Gelder - http://www.vangelder.co.nz/excel


"Scott" wrote in message
...
If I want to run a macro every half hour, do I use the
OnTime method? This is what I have tried:

Dim KeepingTime As Boolean
Dim Times As Long

Times = 10

KeepingTime = True

Do While KeepingTime = True

Application.OnTime Now + TimeValue
("00:30:0"), "GetAll"

Times = Times - 1

If Times < 1 Then
KeepingTime = False
End If
Loop

Scott




JE McGimpsey

Running a macro every half hour
 
Change

Dim Times As Long

to

Static Times As Long

otherwise a new local variable will be created each time the Sub is run.

One alternative:

Public Sub GetAll()
Static Times As Long
Static bAlreadyRun As Boolean
If Not bAlreadyRun Then
Times = 10
bAlreadyRun = True
End If

'do stuff here

Times = Times - 1
If Times = 1 Then _
Application.OnTime Now + TimeSerial(0, 30, 0), "GetAll"
End Sub







In article ,
"Scott" wrote:

If I want to run a macro every half hour, do I use the
OnTime method? This is what I have tried:

Dim KeepingTime As Boolean
Dim Times As Long

Times = 10

KeepingTime = True

Do While KeepingTime = True

Application.OnTime Now + TimeValue
("00:30:0"), "GetAll"

Times = Times - 1

If Times < 1 Then
KeepingTime = False
End If
Loop

Scott


Scott

Running a macro every half hour
 
Thanks for the help!!!


-----Original Message-----
I have an example on my website


--
Rob van Gelder - http://www.vangelder.co.nz/excel


"Scott" wrote in message
...
If I want to run a macro every half hour, do I use the
OnTime method? This is what I have tried:

Dim KeepingTime As Boolean
Dim Times As Long

Times = 10

KeepingTime = True

Do While KeepingTime = True

Application.OnTime Now + TimeValue
("00:30:0"), "GetAll"

Times = Times - 1

If Times < 1 Then
KeepingTime = False
End If
Loop

Scott



.


Scott

Running a macro every half hour
 
Thanks for the help!!!

-----Original Message-----
I have an example on my website


--
Rob van Gelder - http://www.vangelder.co.nz/excel


"Scott" wrote in message
...
If I want to run a macro every half hour, do I use the
OnTime method? This is what I have tried:

Dim KeepingTime As Boolean
Dim Times As Long

Times = 10

KeepingTime = True

Do While KeepingTime = True

Application.OnTime Now + TimeValue
("00:30:0"), "GetAll"

Times = Times - 1

If Times < 1 Then
KeepingTime = False
End If
Loop

Scott



.



All times are GMT +1. The time now is 12:03 AM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com