Private Sub Worksheet_Change(ByVal R As Range)
Dim ds$, tablo, i&, x$
ds = Application.DecimalSeparator
Set R = Intersect(Range("A2:A" & Rows.Count), R, UsedRange)
Application.EnableEvents = False
[A1] = Val(Replace(CStr([A1]), ",", "."))
If Not R Is Nothing Then
If FilterMode Then ShowAllData 'si la feuille est filtrée
For Each R In R.Areas 'si entrées ou effacements mutiples (copier-coller)
tablo = R.Resize(, 2).Formula 'matrice, plus rapide, au moins 2 éléments
For i = 1 To UBound(tablo)
x = CStr(tablo(i, 1))
If IsNumeric(Replace(x, ".", ds)) Then tablo(i, 1) = "=" & x & "+A$1"
Next i
R = tablo 'restitution
Next R
End If
Application.EnableEvents = True
End Sub