Re,
A mettre dans le module de la feuille :
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Plage As Range
Dim PlgSansDoublon As Range
If Target.Count > 1 Then Exit Sub
If Target.Column > 2 Then Exit Sub
If Target.Column = 1 Then
If Target.Offset(, 1).Value = "" Then Exit Sub
End If
If Target.Column = 2 Then
If Target.Offset(, -1).Value = "" Then Exit Sub
End If
With ActiveSheet
Set Plage = .Range(.Cells(1, 1), .Cells(.Rows.Count, 2).End(xlUp))
.Columns("H:I").ClearContents
Set PlgSansDoublon = .Range(.Cells(1, 8), .Cells(Plage.Rows.Count, 9))
With PlgSansDoublon
.Value = Plage.Value
.RemoveDuplicates Array(1, 2), 1
.Sort PlgSansDoublon(1, 1), xlAscending, , , , , , xlYes
End With
End With
End Sub