my code was missing the end sub and I forgot to verify the Yes. Silly me. Just use xld's code. He is the Distinguished Lord of VBAX after all
[vba]
Private Sub Worksheet_Change(ByVal Target As Range)end sub[/vba]
If Target.Column = 17 And Target.Row > 8 Then and target.value = "Yes"
Target.Worksheet.Unprotect ("insert password here")
Target.EntireRow.Locked = True
Target.Worksheet.Protect ("insert password here")
End If