Sub Worksheet_Change(ByVal Target As Range)
On Error GoTo Fin: If Target.Count > 1 Then Exit Sub
If Not Intersect(Target, [A12:F1000]) Is Nothing Then
Dim L%, C%, Tablo, Debut
Application.ScreenUpdating = False
L = Target.Row
If Cells(L, "E") <> "" And Cells(L, "F") <> "" Then ' On bosse uniquement si E et F sont remplies
Range(Cells(L, "H"), Cells(L, "XG")).ClearContents ' On efface la ligne
Debut = Cells(L, "E")
Tablo = Range("A10:XG10") ' Horaire dans tableau plus rapide
Application.EnableEvents = False
For C = 8 To 631 ' De H à XG
If Abs(Tablo(1, C) - Debut) < "00:10:00" Then ' Si case heure = heure début
Cells(L, C) = Cells(L, "D") ' On met la tache
Exit For
End If
Next C
End If
End If
Fin:
Application.EnableEvents = True
End Sub