Maybe you can use the BeforePrint event to intercept the print action and print the cover beforehand.
In ThisWorkbook:
Dim blnPrinting As Boolean
Private Sub Workbook_BeforePrint(Cancel As Boolean)
If blnPrinting = False Then
Cancel = True
With ActiveSheet.PageSetup
If .PrintArea = "" Then
MsgBox "No print area set."
Else
Call PrintWithCover(.PrintArea)
End If
End With
End If
End Sub
Sub PrintWithCover(sToPrint$)
blnPrinting = True
Sheets("Cover").Range("A1:D100").PrintOut 'Change accordingly
ActiveSheet.Range(sToPrint).PrintOut
blnPrinting = False
End Sub
Bookmarks