Private Sub Worksheet_Change(ByVal Target As Range)
Set Target = Intersect(Target, [B4:IV5])
If Target Is Nothing Then Exit Sub
Dim col As Range
For Each col In Target.Columns 'si changements simultanés
If Cells(4, col.Column) >= Date Then _
Cells(9, col.Column) = Cells(5, col.Column)
Next
End Sub