Thanks for the advice So if I have a macro by the name of "sort" which looks like this: Sub sort() ' ' Sort Macro ' Macro recorded 01/08/2011 by jmoore10 ' Range("C3:C22").Select ActiveCell.Offset(-1, 0).Range("A1:C21").sort Key1:=ActiveCell.Offset(0, 2). _ Range("A1"), Order1:=xlDescending, Header:=xlGuess, OrderCustom:=1, _ MatchCase:=False, Orientation:=xlTopToBottom, DataOption1:=xlSortNormal End Sub Would I then use the following code within the same Module as my Macro? Public dTime As Date Sub Run_Macro() dTime = Now + TimeValue("00:15:00") Application.OnTime dTime, "Run_Macro" End Sub As well as having the following code in my main workbook: Private Sub Workbook_BeforeClose(Cancel As Boolean) Application.OnTime dTime, "Run_Macro", , False End Sub Private Sub Workbook_Open() Application.OnTime Now + TimeValue("00:15:00"), "Run_Macro" End Sub Forgive the amount of code here, I'm just trying to get my head around all of it! Thanks again, - Jon