Sous totaux lignes vides

Bonsoir,

Je viens vers vous pour solliciter votre aide : j'ai sur une feuille plusieurs montants dans une même colonne dans laquelle j'ai besoin de calculer des sous totaux sur chaque lignes vides, auriez-vous une astuce pour que cela se fasse plus facilement que de devoir tout faire en sélectionnant manuellement les plages entre chaque sous-totaux? ci-joint un fichier exemple.

Merci par avance :)

13test.xlsx (9.02 Ko)

Bonsoir,

pour avoir une formule qui se met automatiquement dans les lignes vides entre des données, il faudra du VBA.

Si ces sous-totaux peuvent être dans une autre colonne, ça peut se faire via une formule incrémentable.

Est-ce que chaque sous-total doit inclure le précédent (de 2 à 16 pour la ligne 17) ou ça recommence après le précédent (10 à 16 pour la ligne 17) ?

Merci pour le retour, je veux bien les 2 options à tester en sachant que les sous totaux doivent repartir à 0 entre chaque plages :)

Merci beaucoup !

bonjour Doux Rêveur, Angel13,

un essai, la macro "RAZ" efface les formules et l'autre les ajoute

Sub Soustotaux()
     Dim c     As Range, N

     'Méthode1 et colonne A, VBA determine les plages et écrit les formules
     On Error Resume Next
     Set c = Sheets("Test").Columns("A").SpecialCells(xlBlanks)
     On Error GoTo 0
     If c Is Nothing Then MsgBox "rien1": GoTo methode2
     N = 1
     For Each ar In c.Areas
          With ar(1)
               .FormulaR1C1 = "=sum(R" & N & "C:R" & .Row - 1 & "C)"
               N = .Row + 1
          End With
     Next

methode2:
     'méthode2 et colonne C, formule Excel365 dynamique qui fait les soustotal entre la ligne suivante à la dernière cellule avec une formule et cette formule
     dernl = Sheets("Test").Range("C" & Rows.Count).End(xlUp).Row + 1
     On Error Resume Next
     Set c = Nothing
     Set c = Sheets("Test").Range("C1").Resize(dernl).SpecialCells(xlBlanks)
     On Error GoTo 0
     If c Is Nothing Then MsgBox "rien2": GoTo methode3
     c.Formula2R1C1 = "=LET(X,iferror(AGGREGATE(14,6,ROW(R1C:R[-1]C)/ISFORMULA(R1C:R[-1]C),1),1),SUM(OFFSET(R1C,X,,ROW()-X-1,)))"

methode3:

End Sub
7angel13.xlsb (24.01 Ko)
Rechercher des sujets similaires à "totaux lignes vides"