Try:
Private Sub Worksheet_Change(ByVal Target As Range)
   If Target.Count > 1 Or Target.Column <> 9 Then Exit Sub
    ActiveSheet.Unprotect Password:="mypass"

      If Target.Text = "Yes" Then
         Target.Offset(0, -7).Resize(1, 9).Locked = True
      ActiveSheet.Protect Password:="mypass"
        Target.EntireRow.Copy 
        Sheets("Sheet2").Range("A" & Rows.Count).End(xlUp).Offset(1).PasteSpecial xlPasteValues
    End If
Application.CutCopyMode = False 

End Sub