try this, To put in this macro, from your workbook right-click the
workbook's icon and pick View Code. This icon is to the left of the "File"
menu this will open the VBA editor, in the left hand window click on your
workbook name, go to insert, module, and paste the code in the window that
opens on the right hand side, press Alt and Q to close this window and go
back to your workbook and press alt and F8, this will bring up a box to
pick the Macro from, click on the Macro name to run it. If you are using
excel 2000 or newer you may have to change the macro security settings to
get the macro to run.
Sub test()
Dim sht As Worksheet
For Each sht In ThisWorkbook.Sheets
sht.PageSetup.LeftHeader = Format(Now(), "yyyy")
Next sht
End Sub
You could also run it before the sheet prints like this, To put in this
macro, from your workbook right-click the workbook's icon and pick View
Code. This icon is to the left of the "File" menu this will open the VBA
editor, in the left hand window double click on thisworkbook, under your
workbook name, and paste the code in the window that opens on the right hand
side, press Alt and Q to close this window and go back to your workbook, now
this will run every time you print the workbook. If you are using excel
2000 or newer you may have to change the macro security settings to get the
macro to run.
Private Sub Workbook_BeforePrint(Cancel As Boolean)
Dim sht As Worksheet
For Each sht In ThisWorkbook.Sheets
sht.PageSetup.LeftHeader = Format(Now(), "yyyy")
Next sht
End Sub
--
Paul B
Always backup your data before trying something new
Please post any response to the newsgroups so others can benefit from it
Feedback on answers is always appreciated!
Using Excel 97 & 2000
** remove news from my email address to reply by email **