cumuler les montants

J

jacky

Guest
salut,

je recherche le moyen de faire des cumuls de montant, de telle sorte que la formule additionne la cellule au-dessus avec la somme des cellules à gauche de la cellule qui contient la formule.
Si la cellule au-desus est vide, alors elle recherche la première cellule au-dessus non vide.


merci d'avance.
 
J

Jean-Marie

Guest
Bonjour

Je te propose une fonction matricelle (a valider par Ctrl+Shift+entrer)
=DECALER(C$1,MAX(SI(ESTVIDE(C$1:C2),1,LIGNES(A$1:A2)))-1,)+SOMME($A3:B3). Cette cellule serait a mettre dans la cellule C3 de la feuille.
Les references relatives/absolues te permettront de faire un glisser deposer de cette formule.

Adapte les references C$1:C2 et $A3:B3 et aussi la valeur de la ligne dans la plage A$1:Axxxxx de la fonction LIGNES.

Attention cette formule ne fonctionne pas sur la 1er ligne de la feuille excel.

Si tu ton tableau est important, il est preferable de faire une fonction VBA

@+Jean-Marie
 
A

andré

Guest
Salut Jacky et Jean-Marie,

En voici une non matricielle :

=SOMME(INDIRECT("$A"&LIGNE()):INDIRECT(ADRESSE(LIGNE();COLONNE()-1;4)))+RECHERCHEV(9^9;INDIRECT(ADRESSE(1;COLONNE();2)):INDIRECT(ADRESSE(LIGNE()-1;COLONNE();4));1)

Toutefois, il faut qu'une dernière valeur dans la colonne au-dessus de la formule soit existante (donc formule également non valable pour la ligne 1) et que cette valeur soit inférieure 9^9 (=387 420 489), au cas contraire il faut remplacer 9^9 par une valeur supérieure.

S'il n'y a pas de valeur supérieure dans la colonne, la formule renverra un message d'erreur.
Pour le supprimer il suffit de taper un 0 dans la première ligne.

Ândré.
 
J

jacky

Guest
salut Jean-Marie et André,

merci d'avoir répondu!

je n'arrive pas à utiliser votre formule. je vais reformuler ma question pour que je sois sûre que je vous ai donné les bonnes indications.

Soit une zone de saisie allant de A2 à C99, cellule dans lesquelles je mettrai des valeurs.
Dans la cellule D2, j'aurai la formule suivante: =somme(A2:C2)
Dans la cellule D3, j'aurai la formule suivante: =somme(A3:C3)+D3
Dans la cellule D4, j'aurai la formule suivante: =somme(A4:C4)+D4

Maintenant, j'aimerai pouvoir laisser une ou plusieurs lignes de tel sorte que la formule aille chercher la valeur cumulée qui se trouve dans la colonne D, quelques cellules au-dessus.
exemple:
Dans la cellule D7, j'aurais la formule suivante: =somme(A7:C7)+D4
J'aimerai avoir une formule qui permettrai de faire la recherche de D4.
La formule voyant la cellule D6 vide, prend la cellule D5 et ainsi de suite jusqu'à ce qu'il trouve (pour l'exemple) la cellule D4.


merci de votre attention
 
M

Monique

Guest
Bonjour,

En D7 selon ton exemple :
=INDIRECT("D"&MAX(SI(D$1:D6<>"";LIGNE(D$1:D6))))+SOMME(A7:C7)
Formule matricielle, à valider par ctrl, maj et entrée.
Si tu mets cette formule à partir de D2, tu devras taper 0 en D1
 
J

Jean-Marie

Guest
Re-Bonjour

C'est encore plus simple avec tes nouvelles explications et plus de reflexion de ma part, avec la formule =SOMME($A2:C2), formule a mettre dans la cellule D2 et fait un glisser/deposer.

@Jean-Marie
 

Discussions similaires

Statistiques des forums

Discussions
312 348
Messages
2 087 508
Membres
103 568
dernier inscrit
NoS