This works fine for me in 2010
BTW, shouldn't AfterPrint be a Public procedure?Private Sub Workbook_BeforePrint(Cancel As Boolean) Sheets(Array("Sheet1", "Sheet2", "Sheet3", "Sheet4", "Sheet5", "Sheet6")).Select Application.OnTime Now, "AfterPrint" End Sub