Using some part of below code, I can Hide & Lock row and after 1 row hide & lock, this code not working on a protected sheet ......

Private Sub Worksheet_Change(ByVal Target As Range)
    Const WkPW As String = "RGPLSG"
    Const WkKW As String = "HIDE ROW"
    Dim AAA
	
    Dim c As Range

    On Error GoTo Terminate
    If Target.Cells.Count > 1 Then GoTo Terminate
    
    If Target.Column = 5 Then
        Range("G:HL").EntireColumn.Hidden = True
        Select Case UCase(Target.Value)
            Case "SUPPLIER":            Set c = Range("G:AD")
            Case "SHIPPING_LINE":       Set c = Range("AE:BA")
            Case "HAULIER":             Set c = Range("BB:BQ")
            Case "PERMIT_COMPANY":      Set c = Range("BR:CC")
            Case "INSPECTION_COMPANY":  Set c = Range("CD:CN")
            Case "COMMISSION_COMPANY":  Set c = Range("CO:CY")
            Case "CO_CHARGES_COMPANY":          Set c = Range("CZ:DJ")
            Case "COURIER_COMPANY":     Set c = Range("DK:DV")
            Case "BANK_CHARGES":        Set c = Range("DW:EX")
            Case "BUYER":               Set c = Range("EY:GB")
            Case "DOCUMENTS":           Set c = Range("GC:GV")
            Case "OTHERS":              Set c = Range("GW:HD")
            Case "BANK_ENTRIES":        Set c = Range("HE:HL")
            Case "All_COLUMNS":         Set c = Range("G:HL")
        End Select
        c.EntireColumn.Hidden = False
    ElseIf Target.Column = 6 And Target.Value = WkKW Then
        With Target.EntireRow
            .Hidden = True
            .Locked = True
        End With
        Sheets("DAILY ENTRY").Protect Password:=WkPW, Userinterfaceonly:=True
    End If

    
Terminate:
    If Err Then
        Debug.Print "ERROR", Err.Number, Err.Description
        Err.Clear
    End If
End Sub