Somme colonne pour chaque ensemble de doublons d'1 autre colonne

Résolu
Oliv. -  
 Oliv. -
Bonjour,

Je cherche à faire une somme conditionnelle d'une colonne, pour chaque ensemble de valeurs identiques d'une autre colonne.

Soit un tableau à 3 colonnes, A - B - C :
- A : nombres entiers, répétés plusieurs fois à la suite (ex. 5 lignes avec "1250", puis 3 lignes avec "2408", etc). C'est mon critère de somme.
- B : nombres quelconques à additionner ; ici les 5 premières lignes, puis les 3 suivantes, etc.
- C : formule somme.si (?), que je collerais au début de chaque série de valeurs identiques dans A.

Ma question : comment exprimer la condition, en tant que : valeur de la colonne A dans la même ligne où se trouve la formule.
soit :
=SOMME.SI(A:A;"valeur de la colonne A = sa valeur dans cette même ligne";B:B)

Peut-être est-il aussi possible d'automatiser le fonctionnement pour toute la colonne ? Je suppose qu'il faudrait alors utiliser VBA, mais n'ayant guère le temps d'approfondir, je privilégie si possible l'utilisation de formules...

Merci d'avance !
Oliv.

2 réponses

  1. melanie1324 Messages postés 1561 Statut Membre 156
     
    Bonjour,

    regarde ce fichier et dis moi si ca correspond à ton besoin :

    https://www.cjoint.com/?CIflP5yCYar

    Le raisonnement est le suivant, c'est que si la valeur de la colonne A est déjà présente dans les lignes précédentes, tu n'affiches rien.
    Si c'est la première fois que cette valeur apparaît, alors tu en fais la somme.
    0
    1. Oliv.
       
      Bonjour melanie1324,

      ça ressemble beaucoup à ce que j'essaie d'obtenir !

      Merci pour votre aide, je vais tâcher de comprendre afin de progresser dans Excel.

      Très bonne journée
      Oliv.
      0
  2. Vaucluse Messages postés 27336 Date d'inscription   Statut Contributeur Dernière intervention   6 453
     
    Bonjour
    je ne vois pas le problème:
    =SOMME.SI(A:A;A1;B:B)
    devrait faire l'affaire en C

    mais va répéter la somme sur toutes les lignes avec la valeur A1.

    Si vous ne voulez voir la somme que en face de la première valeur:
    en C1
    =SI(NB.SI($A$1:A1;A1)=1;SOMME.SI(A:A;A1;B:B);"")

    attention au blocage à ne reporter que sur le premier A1 du champ NB.SI qui doit être évolutif quand vous descendez la formule

    crdlmnt
    0
    1. Oliv.
       
      Bonjour Vaucluse,

      Votre réponse est arrivée en même temps que celle de melanie1324, et ça correspond !

      Merci à vous d'avoir partagé de votre science, ça rend bien service.

      Très bonne journée
      Oliv.
      0