You could prevent people from printing the entire workbook. The code below will only allow the active sheet to be printed.
Private Sub Workbook_BeforePrint(Cancel As Boolean)
On Error GoTo 10
Cancel = True
Application.EnableEvents = False
Application.ScreenUpdating = False
MsgBox "Sheets can only be printed individually", _
vbInformation
Select Case ActiveSheet.Name
Case "ParticularSheet"
Application.Run "YourSub"
End Select
ActiveSheet.PrintOut
10 Application.EnableEvents = True
Application.ScreenUpdating = True
End Sub
Bookmarks