Comment calculer les dépenses sur 30 jours flottant ?

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

marsienfr75

XLDnaute Junior
Bonjour,
colonne 1 : la date
colonne 2 : la dépense
colonne 4 : ce que je voudrais (sans macro SVP)
Je n'ai commencé que le 1er février !
Pour chaque ligne, j'aimerais connaitre les dépenses sur 30 jours (jusqu'à la date de ligne : en colonne 1)
La condition est : "entre 2 dates : la date mentionnée et cette date -30". Mais avec SOMME.SI : je n'arrive pas à formuler la condition convenablement et j'ignore si cela est possible. J'ai aussi envisager d'utiliser BDSOMME mais c'est la même difficultés.
J'ai comme info : SOMME.SI(plage;critère;somme_plage) : c'est au niveau de la formulation du "critère" que je n'y arrive pas (faute de savoir).
Merci.
Cordialement, Didier.
 

Pièces jointes

Re : Comment calculer les dépenses sur 30 jours flottant ?

Re,

Formule un peu plus simple en E2 :

Code:
=SOMME(B2:INDEX(B:B;SI(A2-30,0001<A$2;2;EQUIV(A2-30,0001;A:A)+1)))
Fichier (2).

Nota : j'ai oublié de préciser que les dates en colonne A doivent être classées en ordre ascendant.

A+
 

Pièces jointes

Re : Comment calculer les dépenses sur 30 jours flottant ?

Re, salut Genii,

La bonne formule avec SOMMEPROD :

Code:
=SOMMEPROD((A$2:A2>=A2-30)*(A$2:A2<=A2);B$2:B2)
Mais sur de grands tableaux le calcul sera plus lent qu'avec la formule utilisant INDEX/EQUIV.

Fichier joint.

A+

Bonjour,

C'est tout à fait cela ce que je cherche : merci ! Hélas, je ne comprends rien (ou quasiment) ! Je serais incapable de l'utiliser ailleurs !

Sur MicrosoftOffice, je lis "SOMMEPROD(matrice1;matrice2;matrice3,...)" mais je ne comprends pas ce que cela signifie le terme "matrice" ! Il peut y avoir entre 2 et 255 occurrences, mais pour la ligne 15 : "=SOMMEPROD((A$2:A15>=A15-30)*(A$2:A15<=A15);B$2:B15)", je dois dire que ">=" m'était inconnu ! J'arrive à comprendre : "A15>=A15-30" cela signifie "compris entre la date et la date - 30". Les matrices sont séparées par le point-virgule alors ... Quelle galère à comprendre !

La possibilité d'utiliser "INDEX/EQUIV" :'intéresse mais j'aimerais comprendre !

Cordaielemnt, Didier.
 
Re : Comment calculer les dépenses sur 30 jours flottant ?

Bonjour,
une autre formule en utilisant somme.si.ens. Formule en A2 à recopier vers le bas. (fonction disponible à partir de Excel 2007)
Code:
=SOMME.SI.ENS( $B$2:$B$15;$A$2:$A$15;"<=" & A2; $A$2:$A$15;">" & (A2-30))

Pour comprendre la fonction sommeprod on peut lire, sur l'excellent site Excelabo.net, la rubrique sur sommeprod: Ce lien n'existe plus

Un équivalent en sommeprod de la formule ci-dessus serait:
Code:
=SOMMEPROD( ($A$2:$A$15<=A2) * ($A$2:$A$15>A2-30) * ($B$2:$B$15) )
 
Dernière édition:
Re : Comment calculer les dépenses sur 30 jours flottant ?

Bonjour à tous et à JBOBO,

Ta formule fonctionne, me semble-il, si les dates sont triées en ordre ascendant et si il n'y a qu'une dépense par jour. S'il y a plusieurs dépenses pour un même jour, la somme pour chacune des lignes sera différente et ce n'est qu'à la dernière ligne qu'on aura le total sur 30 jours.
 
Re : Comment calculer les dépenses sur 30 jours flottant ?

Bonjour mapomme, JBOBO 🙂

Je vote pour la formule de JBOBO, j'aurais dû y penser 🙂

En effet il est plus que probable que les lignes sont écrites au fil de l'eau, chronologiquement.

Et quand on est sur une ligne on ne sait pas encore s'il y aura d'autres dépenses le même jour.

A+
 
Re : Comment calculer les dépenses sur 30 jours flottant ?

Bonjour à tous et à JBOBO,

Ta formule fonctionne, me semble-il, si les dates sont triées en ordre ascendant et si il n'y a qu'une dépense par jour. S'il y a plusieurs dépenses pour un même jour, la somme pour chacune des lignes sera différente et ce n'est qu'à la dernière ligne qu'on aura le total sur 30 jours.

Bonjour,
Dans mon cas, il y a plusieurs achats par jour et la formule =SOMMEPROD((A$2:A15>=A15-30)*(A$2:A15<=A15);B$2:B15) fonctionne !
Merci mapomme : j'ai compris que le symbole de multiplication "*" signifie ET ; mais il semble que "&" fonctionnerait mais pas pour la même fonction.

Dans un ou deux ans, lorsqu'il y aura trop de lignes, que devrais je faire ?

Cordialement, Didier.
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Retour