Private Sub Worksheet_Change(ByVal Target As Range)
Dim pl As Range, i As Range, r As Range, Dli As Long, Li As Long, Col As Byte, Col1 As Byte
Dim a&
Application.ScreenUpdating = False
If Not Intersect(Target, Range("H5:M20")) Is Nothing Then
a = Target.Row
'Somme en N des lignes H5 à M20
Range("N" & a) = Application.WorksheetFunction.Sum(Range("H" & a & ":M" & a))
Range("O" & a) = Range("N" & a) * Range("D" & a)
'Somme des colonnes N et O
Range("N21") = Application.WorksheetFunction.Sum(Range("N" & a))
Range("O21") = Application.WorksheetFunction.Sum(Range("O" & a))
End If
If Target.Count > 1 Then Exit Sub
Application.EnableEvents = False
If Not Intersect(Target, Range("A5:A20")) Is Nothing Then
If Target.Value <> "" Then
Target.Offset(0, 6).Value = Target.Value
Target.Offset(20, 6).Value = Target.Value
Target.Offset(39, 6).Value = Target.Value
Target.Offset(58, 6).Value = Target.Value
ElseIf Target.Value = "" Then
Target.Offset(0, 1).Value = ""
Target.Offset(0, 2).Value = ""
Target.Offset(0, 3).Value = ""
Target.Offset(0, 4).Value = ""
Target.Offset(0, 6).Value = ""
Target.Offset(20, 6).Value = ""
Target.Offset(39, 6).Value = ""
Target.Offset(58, 6).Value = ""
End If
End If
Application.EnableEvents = True
Application.ScreenUpdating = True
End Sub