Private Sub Worksheet_Change(ByVal R As Range)
Dim c As Range, n&, a(), x$
Set R = Intersect(R, [E:E,I:I,M:M,Q:Q,U:U,Y:Y,AC:AC,AG:AG])
If R Is Nothing Then Exit Sub
ReDim a(1 To R.Count, 1 To 2)
For Each c In R
n = n + 1
a(n, 1) = c
Next
Application.ScreenUpdating = False
Application.EnableEvents = False
n = 0
Application.Undo 'annule les modifications
For Each c In R
n = n + 1
If c <> a(n, 1) Then a(n, 1) = c: a(n, 2) = Cells(c.Row, 2) & " " & Cells(c.Row, 3) Else a(n, 1) = ""
Next
Application.Undo 'rétablit les modifications
Application.EnableEvents = True
With Sheets("Calendrier ") 'espace superflu !!!
For n = 1 To UBound(a)
If a(n, 2) <> "" Then
Set c = .Range("C:I").Find(a(n, 1), , xlFormulas, xlWhole)
If Not c Is Nothing Then
x = c(2)
If InStr(x, a(n, 2)) Then
x = Replace(x, vbLf & a(n, 2), "")
c(2) = Replace(x, a(n, 2), "")
End If
End If
End If
Next
End With
End Sub