This prints the "Summary" Sheet and all Sheets that have a Value for "Total Materials:" or/and for "Labor $:".
It does not print the last ("Detail") Sheet.
I have deleted the orphan "Sheet1" that somehow ended up in the middle of all your sheets.
It starts checking at the fifth sheet up to the last - 1 sheet ("Detail")
It is setup to print to a single PDF file into the folder where this workbook is saved so you won't waste paper. Or maybe keep it in PDF so you can check it and print from PDF.
Sub Print_Sheets()
Dim sharr, n As Long, i As Long
sharr = Array("Summary")
n = 0
For i = 5 To Sheets.Count - 1
With Sheets(i)
If .UsedRange.Find("Total Materials:").Offset(, 1).Value <> 0 Or .UsedRange.Find("Labor $:").Offset(, 1).Value <> 0 Then
n = n + 1
ReDim Preserve sharr(n)
sharr(n) = .Name
End If
End With
Next i
Sheets(sharr).PrintOut , , , , , True, , "C:\E-Mail Downloads\Proposal.PDF"
'Delete above line and uncomment next line to print to printer
'Sheets(sharr).PrintOut
End Sub
I deleted some sheets at the end so it would not be over the maximum size allowed.
If you attach a workbook, do it without protected sheets etc.
Bookmarks