I've done this with a Workbook_Before print event
I'll copy one of mine in and you can modify it as necessary. Note that I
used some named ranges that were defined within the workbook.
Application.ScreenUpdating = False
With ActiveSheet.PageSetup
.LeftHeader = ""
.CenterHeader = "Company Proprietary"
.RightHeader = ""
.LeftFooter = Range("ToolName").Text & Chr(10) & _
"Issue Date: " & Range("Issue_Date").Value & Chr(10) & _
"Issue Number: " & Range("IssueNumber").Value
.CenterFooter = "Company Proprietary" '& Chr(10) & "&P of &N"
.RightFooter = ""
.CenterHorizontally = True
.CenterVertically = False
End With
Application.ScreenUpdating = True
End Sub
Press CTRL F11 and add this to the "ThisWorkbook" Excel Object.