1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| Sub SumData()
Dim Ws As Worksheet
Dim DerLig As Long, r As Long, MonTot As Long
Set Ws = Sheets("TaFeuille")
DerLig = Ws.Cells(Rows.Count, 1).End(xlUp).Row 'Récupère le N° de la dernière ligne remplie
For r = DerLig To 2 Step -1 'Boucle de la dernière ligne à la 2ème car titre
If Ws.Cells(r, 1) = Ws.Cells(r - 1, 1) Then 'Si la cellule est = à la cellule du "dessus"
MonTot = MonTot + Ws.Cells(r, 2) 'Incrémente le total via la variable MonTot
Rows(r).Delete 'Supprime la ligne
Else 'Si la cellule est <> de celle du "dessus"
MonTot = MonTot + Ws.Cells(r, 2) 'Incrémente le total
Ws.Cells(r, 2) = MonTot 'Renseigne le total dans la ligne équivalente à la cellule colonne B
MonTot = 0 'Réinitialise la variable pour le total
End If
Next r
End Sub |