Somme si date ...

Résolu
vince3457 Messages postés 36 Statut Membre -  
Vaucluse Messages postés 27336 Date d'inscription   Statut Contributeur Dernière intervention   -
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. tchernosplif Messages postés 714 Statut Membre 249
     
    Bonjour,

    Difficile de vous comprendre, je vous propose:

    =SOMME.SI(A:A;ANNEE(A1);AH:AH)
    0
  2. commentcamarcheeay Messages postés 735 Statut Membre 86
     
    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. commentcamarcheeay Messages postés 735 Statut Membre 86
       
      Bien-sûr, selon si tu veux une comparaison stricte ou large à utiliser < ou <=
      0
  3. vince3457 Messages postés 36 Statut Membre
     
    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. commentcamarcheeay Messages postés 735 Statut Membre 86
       
      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. commentcamarcheeay Messages postés 735 Statut Membre 86
       
      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
  4. commentcamarcheeay Messages postés 735 Statut Membre 86
     
    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
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. Vaucluse Messages postés 27336 Date d'inscription   Statut Contributeur Dernière intervention   6 453
     
    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