I have done this a billion times but for some reason this code is only doing it on the activesheet..what is my tired brain missing? Oddly for however many sheets I have, it runs the code that many times on the same sheet.

Sub ClearContentsWS()

Dim ws As Worksheet

    For Each ws In ActiveWorkbook.Sheets
        
            If ws.Visible = True Then
                Range("L2:L14,L28:L53").Select
                Range("L28").Activate
                Range("L2:L14,L28:L53,L67:L92").Select
                Range("L67").Activate
                Range("L2:L14,L28:L53,L67:L92,L106:L118").Select
                Range("L106").Activate
                Selection.ClearContents
            End If
        
    Next ws
End Sub