اذا كان الكود يعمل معك بكفاءة فبهذه الإضافة يكون الكود كالتالى:
Sub Macro1()
Dim i As Integer, m As Integer
Application.ScreenUpdating = False
For i = 2 To 4
With ThisWorkbook.Worksheets(i)
m = .Cells(Rows.Count, 1).End(xlUp).Row
If i <> 3 Then
.Range("A1:AH" & m).PrintOut Copies:=1, Collate:=True
ElseIf i = 3 Then
If .Range("AH" & .Cells(Rows.Count, "AH").End(xlUp).Row).Value > 0 Then
.ListObjects("HR_2").Range.AutoFilter Field:=34, Criteria1:=">0"
.Range("A1:AH" & m + 1).PrintOut Copies:=1, Collate:=True
.ListObjects("HR_2").Range.AutoFilter
End If
End If
End With
Next i
Application.ScreenUpdating = True
Sheets("Overtime").PageSetup.RightFooter = Range("AP3").Value
End Sub