Private Sub Worksheet_Change(ByVal Target As Range)
Dim TS As ListObject, plage As Range, xrgRef As Range, x As Range, n
Set xrgRef = Sheets("liste").Range("a1").ListObject.DataBodyRange
With Range("a1").ListObject
Set plage = .DataBodyRange.Offset(, 1).Resize(, .ListColumns.Count - 1)
On Error Resume Next
For Each x In Intersect(plage, Target)
x.Comment.Delete
If x <> "" Then
n = Application.Match(x, xrgRef.Columns(1), 0)
If Not IsError(n) Then
x.AddComment
x.Comment.Text Text:=xrgRef(n, 2)
End If
End If
Next x
End With
End Sub