Bonjour homernell
Voici déjà le code pour la répartition du CA
Sub RépartitionCA()
Dim Lig As Long
Dim CAàRep As Single, CaTot As Single, ValCa As Single
CAàRep = Abs(Range("E19"))
For Lig = 3 To 18
If Range("D" & Lig).Value <> "" Then GoTo SuiteLig1
CaTot = WorksheetFunction.Sum(Range("C" & Lig & ":C18"))
Exit For
SuiteLig1:
Next Lig
' ensuite on fait la répartition
For Lig = 3 To 18
If Range("D" & Lig).Value <> "" Then GoTo SuiteLig2
ValCa = Round(Range("C" & Lig).Value / CaTot * CAàRep, 0)
Range("D" & Lig).Value = ValCa
SuiteLig2:
Next Lig
End Sub
A vous de vous en inspirer pour les + et -