Hi dgc050887,

First of all well done in setting up your payslips like this. So many times I see a separate tabs for each different (in this case employee) item which just isn't the way to go.

This should do what you're after:

Option Explicit
Sub PrintAllPaySlips()

    Dim rngEmployee As Range
    
    Application.ScreenUpdating = False
    
    For Each rngEmployee In Range("Employee")
        With Sheets("PAYSLIP")
            .Range("E4").Value = rngEmployee.Value
            .PrintOut
        End With
    Next rngEmployee
    
    Application.ScreenUpdating = True

End Sub
Note this forum allows attachments so there's no need to use file share sites in future.

Regards,

Robert