Thread: AutoRun Macro
View Single Post
  #4   Report Post  
Posted to microsoft.public.excel.worksheet.functions
Shane Devenshire[_2_] Shane Devenshire[_2_] is offline
external usenet poster
 
Posts: 3,346
Default AutoRun Macro

Hi,

In the ThisWorkbook object you could consider something like this

Private Sub Workbook_Open()
Application.OnTime TimeValue("00:00:00"), "my_Procedure"
End Sub

This is your code in a regular module.

Public Sub my_Procedure()
you code
End Sub

However, Excel must be running for this to trigger at the desired time. A
computer that is in sleep mode will not run the procedure at the desired
time. If you then wake the computer up I don't know if it will automatically
run past stuff or not, you will need to check that.

--
If this helps, please click the Yes button

Cheers,
Shane Devenshire


"chrisnsmith" wrote:

I'm new at Excel so please bare with me. I simply want the macro to run when
the date in cell K2 changes and at no other time. Can this be done without
actually being in the Excel program, in other words, overnight while the
computer is idle?

"Don Guillett" wrote:

This should do it. Now you need to tell us when you want it to fire. If you
want it to fire when the file opened put in the ThisWorkbook module
Auto_Open. But that would assume the changes had been made. Perhaps you want
to put in the Before_close.

Sub runifdatechg()
If Range("c1") < Date Then
Range("H9:I31").Copy Range("D9:E31")
Range("F9:I31").ClearContents
Range("c1") = Date
End If
End Sub

--
Don Guillett
Microsoft MVP Excel
SalesAid Software

"chrisnsmith" wrote in message
...
I have the following macro for my spreadsheet along with one cell
designated
for the Taday() function. How do I set this macro to autorun when the
date
changes?

Sub CustomerFutures()
'
' CustomerFutures Macro
'
'
Range("H9:I31").Select
Selection.Copy
Range("D9:E31").Select
ActiveSheet.Paste
Range("F9:I31").Select
Application.CutCopyMode = False
Selection.ClearContents
End Sub