Something like this...

Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Count > 1 Then Exit Sub
    If Not Target.Column = 3 Then Exit Sub
    If Worksheets("Sheet2").Range("B:B").Find(Target.Value) Is Nothing Then
        Worksheets("Sheet2").Range("B1").End(xlDown).Offset(1, 0).Value = Target.Value
    End If
End Sub