Somme si date ...

Résolu
Bonjour,

Voici mon problème,

Je veux faire un suivi d'indicateurs...dont un cumul annuel.
J'ai donc une colonne avec tous mes mois en format : mois/année

J'ai essayé plusieurs formules pour que excel me fasse la somme des valeurs des cellules dont les mois appartiennent à l'année 2011 (puis 2012...)

j'ai essayé cette formule :

=somme.si(A:A;"<"&$D$2;AH:AH) avec mes dates dans la colonne A, mes données à additionner dans la colonne AH et dans ma cellule D2 la formule : =ANNEE(AUJOURDHUI())

Ca ne marche pas... quelqu'un aurai une solution.

D'avance merci

5 réponses

  1. Bonjour,

    Difficile de vous comprendre, je vous propose:

    =SOMME.SI(A:A;ANNEE(A1);AH:AH)
    0
    1. Bonjour,

      Je propose la formule :

      {=SOMME(SI(ANNEE(A:A)<=$D$2;AH:AH;0))}

      Formule matricielle à faire valider par Ctrl+Maj+Entré
      0
      1. Bien-sûr, selon si tu veux une comparaison stricte ou large à utiliser < ou <=
        0
    2. En entrant cette formule, ça me fait la somme de toutes les lignes de la colonne AH et non pas uniquement celles correpondant à l'année définie dans D2... Est ce normal ?
      0
      1. Non, ce n'est pas normal, sauf si la dernière année que tu as dans ta liste est l'année d'aujourd'hui (2011) parce que j'ai utilisé une inégalité large (inférieur ou égal). Sinon, je l'ai testée et elle marche chez moi.
        0
      2. Je m'excuse, effectivement, la formule ne marche pas si on laisse la colonne entière.
        Celle qui marche est la suivante:

        {=SOMME(SI(ANNEE(A1:A10)<$D$2;AH1:AH10; 0))}

        En précisant la fin de la marge (A1:A10 au lieu de A:A)
        Dans mon prochain post j'essaierai de la donner quelle que soit la situation.
        0
    3. Bonjour,

      Compte tenu de la remarque de vince commentée en mon ancienne réponse, j'ai modifié l'expression pour tenir compte des colonnes A:A et ne pas se limiter à des champs fixes de type A1:A10.

      {=SOMME(SI(ANNEE(DECALER($A$1;;;NBVAL($A:$A)))<$D$2;DECALER($AH$1;;;NBVAL($A:$A)); 0))}


      Ci-dessus une formule (matricielle, donc à valider par Ctrl+Maj+Enter) qui marche pour la majorité des cas. Elle est la même que la première que j'ai donnée en utilisant la fonction "decaler" pour limiter les champs.

      Cordialement!

      C. Taha
      0
      1. Contributeur
        Bonjour
        peut être avec celle là:

        =SOMMEPROD((ANNEE(A1:A1000)=2011)*(AH1:AH1000))
        sachant que ce code exige des limites de champ en N° de ligne ; (n'admet pas A:A ou AH:AH)

        crdlmnt

        0