Hi again :-)

Not well tested... In a junk copy of your wb, try:

Sub DirectBillOnlyIndemnity2Off()
    
    '// Use With to easily qualify each range...                                    //
    With ThisWorkbook.Worksheets("Direct Bill ONLY") '<---OR:  With Sheet4
        '// BEFORE testing, J22 still needed un-merged                              //
        .Range("J22").ClearContents
        .Range("J23").ClearContents
        .Range("K23").ClearContents
        '// ...and you can nest the with for properties of the Range, such as .Borders//
        With .Range("H22:K25")
            .Borders.LineStyle = xlNone
            .Borders(xlDiagonalDown).LineStyle = xlNone
            .Borders(xlDiagonalUp).LineStyle = xlNone
            .Borders(xlInsideVertical).LineStyle = xlNone
            .Borders(xlInsideHorizontal).LineStyle = xlNone
        End With
        
        With .Range("I24")
            .Borders.LineStyle = xlNone
            .Borders(xlDiagonalDown).LineStyle = xlNone
            .Borders(xlDiagonalUp).LineStyle = xlNone
        End With
    End With
End Sub
Your ranges were not being qualified, so success would be dependant upon the sheet being active.

I did not read through all the code, but I do not believe you are deleting any of the sheets. If this is the case, might I make a suggestion? See in the very first With, where I noted that you could use the sheet's CodeName, like:
    With Sheet4
As long as you are not copying sheets or deleting them, you might consider using their CodeNames, as two things seem benefitted to me leastwise. (1) If the user renames a sheet, the codename still works, and (2) I find it much easier to write code with intellisense helping me out.

Hope that helps,

Mark