Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I have an Excel workbook that has several worksheets in it. Is there a way one sheet automatically print at 8:00 am, another sheet automatically print at 10:00 am, another sheet automatically print at 12:00 noon and so on?

I am still using Office 2003

share|improve this question

First of all; Welcome to Superuser.

If you are familiar with Macros/VBA in excel, you can use the following code to get started. Sorry, this works for me, but I don't have Excel 2003 to test it before giving it to you. That means I can't guarantee it will work for you without some additional work.

Copy and paste this into a VBA module. You will need to change sheet names to be the names of your tabs.

Private Sub Workbook_Open()
Run "timer"
End Sub

Sub timer()
Application.OnTime TimeValue("08:00:00"), "Print_1"
Application.OnTime TimeValue("10:00:00"), "Print_2"
Application.OnTime TimeValue("12:00:00"), "Print_3"
End Sub

Sub Print_1()
' Prints the sheet for 8am
    ActiveWindow.SelectedSheets.PrintOut Copies:=1
End Sub

Sub Print_2()
' Prints the sheet for 10am
    ActiveWindow.SelectedSheets.PrintOut Copies:=1
End Sub

Sub Print_3()
' Prints the sheet for 12pm
    ActiveWindow.SelectedSheets.PrintOut Copies:=1
End Sub

Hope this helps you.

Note: The system uses a 24 hour clock. So in order to use times after noon, add 12 to it. For instance, 3 pm is 15:00:00.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.