Salut à tout le forum
voilà g fait une macro qui me permet de trier mes donnees puis de me faire des sous totaux lorsque
-les montants sont supérieurs à 10000
-les montants sont entre 4000 et 10000
-les montants sont inférieurs à 10000
ces sous totaux seront mis dans une ligne qui sera insérée en dessous de la dernière ligne de chaque condition
Jusque là cava, g réussi à bidouiller des trucs. Mais mon problème se pose lorsque je supprime une ligne.
mon sous total ne bouge pas. g essayé de mettre du .formula à la place de .value, mais cest pas terrible.
désesperée, je viens chercher de l'aide. si quelqu'un a une solution
merci
voilà g fait une macro qui me permet de trier mes donnees puis de me faire des sous totaux lorsque
-les montants sont supérieurs à 10000
-les montants sont entre 4000 et 10000
-les montants sont inférieurs à 10000
ces sous totaux seront mis dans une ligne qui sera insérée en dessous de la dernière ligne de chaque condition
Jusque là cava, g réussi à bidouiller des trucs. Mais mon problème se pose lorsque je supprime une ligne.
mon sous total ne bouge pas. g essayé de mettre du .formula à la place de .value, mais cest pas terrible.
désesperée, je viens chercher de l'aide. si quelqu'un a une solution
merci
Code:
Sub TrierEtSommeSItest()
Worksheets("Feuil1").Range("A1").Sort Key1:=Worksheets("Feuil1").Columns("H"), order1:=xlDescending, Header:=xlGuess
' boucle
For i = 2 To 10000
If Range("H" & i).Value >= 10000 Then
SommeSup = SommeSup + Range("H" & i).Value
derniersup = i
vadresse = Worksheets(1).Range("H" & i).Address
ElseIf Range("H" & i).Value >= 4000 And Range("H" & i).Value < 10000 Then
SommeInf = SommeInf + Range("H" & i).Value
dernierinf = i
Else
SommeReste = SommeReste + Range("H" & i).Value
End If
Next
Range("H" & derniersup + 1).EntireRow.Insert
Range("G" & derniersup + 1).Value = "Total des retards >= 10 000"
Range("G" & derniersup + 1).Font.Bold = True
Range("G" & derniersup + 1).HorizontalAlignment = xlRight
Range("H" & derniersup + 1).Value = SommeSup
'ligne suivante :test : copier la formule afin que si ya supression de ligne, le sous total puisse changer automatiquement
'Range("H" & derniersup + 1).Formula = "=SUM(" & vadresse & " )"
Range("H" & derniersup + 1).Font.Bold = True
Range("H" & dernierinf + 2).EntireRow.Insert
Range("G" & dernierinf + 2).Value = "Total des retards entre 4 000 et 10 000"
Range("G" & dernierinf + 2).Font.Bold = True
Range("G" & dernierinf + 2).HorizontalAlignment = xlRight
Range("H" & dernierinf + 2).Value = SommeInf
Range("H" & dernierinf + 2).Font.Bold = True
Cells(Rows.Count, 7).End(xlUp).Offset(1).Select
Cells(Rows.Count, 7).End(xlUp).Offset(1).Value = "Total des retards < 4000"
Cells(Rows.Count, 7).End(xlUp).Font.Bold = True
Cells(Rows.Count, 7).End(xlUp).Offset(1).HorizontalAlignment = xlRight
Cells(Rows.Count, 8).End(xlUp).Offset(1).Value = SommeReste
Cells(Rows.Count, 8).End(xlUp).Font.Bold = True
End Sub