EXCEL Somme jusqu'à la première cellule vide [Fermé]

Signaler
Messages postés
11
Date d'inscription
lundi 20 août 2007
Statut
Membre
Dernière intervention
20 février 2008
-
Messages postés
52041
Date d'inscription
lundi 13 août 2007
Statut
Contributeur
Dernière intervention
3 août 2020
-
Bonjour,

Voici mon problème :

Dans la colonne A j'ai des valeurs à presque toutes les lignes mais certains sont vides. J'aimerais pouvoir avoir la somme, dans la colonne B, des valeurs qui se trouvent dans la colonne A jusqu'à la première cellule vide.

Exemple :

               A                       B
 1                                          45               
 2                  10
 3                   5
 4                  30
 5                                          126
 6                  15
 7                  50
 8                  40
 9                   1
 10                 20


Je cherche donc à trouver la formule de somme qui me donnerait la valeur dans la colonne B. Je ne peux faire le tout manuellement parce que mon fichier est pas mal plus gros... En bref, une somme dans une autre colonne jusqu'à la prochaine cellule vide est ce que je recherche.

Merci beaucoup!

5 réponses

Messages postés
14934
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
4 102
bonjour

Je cherche donc à trouver la formule de somme

Avec une formule Excel je ne pense pas que cela soit possible mais avec une fonction personnalisée à insérer dans un module Vba c'est réalisable.
Public Function Snonvides(colonne As Variant)
Dim l As Double
Application.Volatile
Snonvides = ""
l = Parent.Caller.Row
If Asc(colonne) > 96 Then colonne = Asc(colonne) - 96
If Asc(colonne) > 64 Then colonne = Asc(colonne) - 64
If Cells(l, colonne).Value <> "" Then Exit Function
Snonvides = 0
Do
l = l + 1
Snonvides = Snonvides + Cells(l, colonne).Value
Loop While Cells(l, colonne).Value <> ""
End Function

Dans la colonne où tu veux tes totaux tu mets la formule : =Snonvides("A") et tu recopies jusqu'en bas avec "A" le code de la colonne à totaliser.
Messages postés
52041
Date d'inscription
lundi 13 août 2007
Statut
Contributeur
Dernière intervention
3 août 2020
13 790
Je peux te proposer une demi-solution, qui affiche le total A2:A4 non pas en B1, comme tu le voudrais, mais en B5, celui de A6:A10 en B11 (au lieu de B5), etc.
Si ça peut te convenir, tu laisses la cellule B1 vide, en B2 tu saisis =SI(A2=0;SOMME(A$1:A2)-SOMME(B$1:B1);""), et tu recopies vers le bas.
C'est un peu tiré par les cheveux, je sais bien, mais enfin, ça peut donner des idées à d'autres ...
Messages postés
14934
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
4 102
bonjour Raymond

C'est effectivement une astuce de contournement bien vue mais potap3nck est parti en vacances...
Messages postés
16356
Date d'inscription
mardi 12 juin 2007
Statut
Contributeur
Dernière intervention
3 août 2020
9 599
Bonjour,

Quant à moi, il me semble que le fichier Excel n'est pas bien conçu. Une base de ce type doit pouvoir être triée, filtrée, etc.
Or, ce n'est pas possible dans ce fichier.

Il y a des fonctions Excel, je pense en particulier à la fonction SOUS-TOTAL qui est faite justement pour ça, pour un fichier conçu correctement.

m@rina
Messages postés
52041
Date d'inscription
lundi 13 août 2007
Statut
Contributeur
Dernière intervention
3 août 2020
13 790
Exact ! Mais je suppose que la structure du fichier lui a été imposée, soit par le demandeur, soit parce qu'il s'agit d'une importation.
Amitiés à gbinforme et à m@rina.