Question sur SOMMEPROD sous EXCEL

FIL -  
 miph -
Bonjour à tous

je débute avec excel et j'ai un probleme pour calculer avec SOMMEPROD.

ds ma 1ere cellule en A15 ((=SOMMEPROD(A1:A10=33)*(B1:B10)) le résultat est correct, par contre quand je recommence la meme formule en D15 ((=SOMMEPROD(D1:D10=33)*(E1:E10)) il m'affiche #VALEUR! Pourquoi ??
Quelqu'un aurait il une solution

Merki

16 réponses

  1. Ptite'Miss
     
    Bonjour à tous,

    Vous m'avez l'air tous bien "callé" en Excel !!! Et c'est chouette pour moi, j'ai besoin de vos lumières !!!
    Je suis débutante et je galère un peu !
    Pouvez-vous m'aider ?

    J'ai compris grosso-merdo la fonction SOMMEPROD et j'ai réussi à m'en servir pour un truc simple ! Le souci, c'est que j'ai une truc à faire qui est un peu plus compliqué, et je n'y arrive pas !

    En fait, je dois calculer en taux d'occupation à partir de 2 critères ! J'ai donc écrit :
    =SOMMEPROD(($F$2:$F$133="2005")*($I$2:$I$133="01")*($J$2:$J$133/$K$2:$K$133))
    Les deux premiers critères sont OK, ils fonctionnent ! Par contre, le troisième critère ne fonctionne pas. Peut être parce qu'on ne peut pas faire de calculer ? Mais c'est bizarre !!!

    Y-a-t'il quelqu'un qui peut m'aider ???

    D'avance merci et bonne journée.
    2
  2. Armojax Messages postés 1863 Date d'inscription   Statut Membre Dernière intervention   1 529
     
    Salut FIL,

    Hébé tant mieux si tu as un résultat correct en A15, c'est plutôt étonnant.
    La syntaxe serait plutôt :
    =SOMMEPROD(A1:A10;B1:B10)
    Equivaut à :
    A1*B1 + A2*B2 + ... + A10*B10.
    1
    1. FIL
       
      merci Armojax,
      mais en fait je voudrai comptabiliser la somme des cellules se trouvant à droite de chaque chiffre 33. ex :

      45 2
      33 1
      33 2
      33 0
      41 4
      ------
      3 etant la réponse
      merci
      0
    2. miph
       
      La synthaxe de la formule normale, c'est ça:
      =SOMMEPROD((D1:D10=33)*(E1:E10))
      Si tu as ce message, c'est que dans la zone e1:e10 tu as probablement une zon non numérique.
      Excel multiplie alors un "vrai" donc "1" ou un "faux" donc "0" par une zone alpha, ce qui donne une erreur.
      0
  3. lami20j Messages postés 21506 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 571
     
    Salut,

    conseils de rédaction
    Bonjour,
    
    question (pas en majuscules)
    Pouvez-vous ..................?
    Merci.

    1
  4. gbinforme Messages postés 14930 Date d'inscription   Statut Contributeur Dernière intervention   4 744
     
    bonjour

    En fait ce n'est pas sommeprod qu'il faut utiliser dans ton cas.

    =SOMME(SI(A1:A10=33;B1:B10;0))

    Ceci est beaucoup plus adapté et fonctionne en additionnant
    la ligne de la colonne B dont le critère de A est correct.

    Mais pour que cela fonctionne, il faut valider avec "Ctrl + Maj + Entr"
    qui rajoute des crochets à la formule qui devient matricielle.

    Avec la syntaxe =SOMMEPROD(A1:A10=33)*(B1:B10))
    je m'étonne que tu ais un résultat ?

    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. gbinforme Messages postés 14930 Date d'inscription   Statut Contributeur Dernière intervention   4 744
     
    bonjour

    Tu peux essayer aussi ceci :

    =SOMME((A1:A10=33)*B1:B10)

    qui donne le même résultat en étant plus simple et tu peux rajouter des conditions:

    =SOMME((A1:A10=33)*(D1:D10<"lm")*B1:B10)

    Attention, dans tous les cas, ta matrice à additionner (B1:B10 ici),
    doit être numérique pour ne pas avoir de message erreur !

    bons essais et donnes nous le résultat.
    0
    1. FIL
       
      merci gbinforme,

      j'ai trouvé une bonne réponse en tapant :
      =SOMME.SI(A1:A10;33;B1:B10)

      par contre si je veux le resultat sur plusieurs critères, à la place de 33, je voudrai par exemple du 20 au 28, comment faire ??

      je n'ai jamais été aussi près :))

      merci
      0
  7. Armojax Messages postés 1863 Date d'inscription   Statut Membre Dernière intervention   1 529
     
    Hello FIL et gbinforme,

    Faute de mieux pour le moment, en décomposant :
    (critère <=28) - (critère<20)

    =SOMME.SI(A1:A10;"<=28";B1:B10)-SOMME.SI(A1:A10;"<20";B1:B10)

    Y'a peut-être plus simple...
    0
    1. gbinforme Messages postés 14930 Date d'inscription   Statut Contributeur Dernière intervention   4 744
       
      bonjour à tous

      Comme je l'ai mentionné au poste 4, la formule matricielle est plus simple,
      et on peut facilement combiner les conditions :

      =SOMME((A1:A10>=20)*(A1:A10<=28)*B1:B10)
      (attention Ctrl + Maj + Entr pour valider ! )

      c'est le même résultat avec une simplification... mais chacun peut choisir !
      0
  8. lami20j Messages postés 21506 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 571
     
    Salut à tous,

    Un tableau croisé ne sera pas suffisant?

    lami20j
    0
  9. lami20j Messages postés 21506 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 571
     
    Re,

    avec une formule matricielle on peut créer des formules avec des conditions multiples comme bien l'a précisé gbinforme, et c'est assez simple.

    En revanche quand le nombre des conditions devient assez considerable taper une mega-formule peut devenir assez ennuyeux.

    Seulement dans l'esprit TIMTOWDI, qui ne fait pas partie du monde Microsoft malheureusement, j'ai proposé la variante avec un tableau croisé qui peut convenir à un utilisateur windows habitué avec la souris.

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

    lami20j
    0
  10. FIL93 Messages postés 1 Statut Membre
     
    merci à tous,

    pour la formule =SOMME((A1:A10>=20)*(A1:A10<=28)*B1:B10)
    (attention Ctrl + Maj + Entr pour valider ! ) çà fonctionne par contre quand je veux faire pareil pour deux autres colonnes E et F par exemple il me met #VALEUR!

    GRRRR, c enervant

    par contre si je fais =SOMME.SI(A1:A10;"33";B1:B10)+SOMME.SI(A1:A10;"34";B1:B10)+SOMME.SI(A1:A10;"35";B1:B10) etc... çà fonctionne, mais c un peu long :((

    Encore merci à tous
    0
    1. lami20j Messages postés 21506 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 571
       
      Re,

      çà fonctionne, mais c un peu long

      Ben oui, c'est pour ça que j'ai parlé des tableaux croisés

      En revanche quand le nombre des conditions devient assez considerable taper une mega-formule peut devenir assez ennuyeux.

      lami20j
      0
    2. gbinforme Messages postés 14930 Date d'inscription   Statut Contributeur Dernière intervention   4 744
       
      bonjour

      pour deux autres colonnes E et F par exemple il me met #VALEUR!

      comme mentionné en < 4 >
      Attention, dans tous les cas, ta matrice à additionner (B1:B10 ici),
      doit être numérique pour ne pas avoir de message erreur !


      il doit y avoir des espaces ou d'autres caractères alpha dans tes valeurs !

      0
    3. FIL
       
      exact gbinforme dans cette colonne j'ai des cellules qui sont vides !!! donc c'est pour çà que je ne peux pas effectuer la meme opération que pour A et B

      MERCI
      0
  11. gbinforme Messages postés 14930 Date d'inscription   Statut Contributeur Dernière intervention   4 744
     
    bonjour

    exact dans cette colonne j'ai des cellules qui sont vides !!!

    Ton problème ne vient pas de là, car les cellules vides sont gérées,
    mais tu as dû oublier : (attention Ctrl + Maj + Entr pour valider ! )

    Excel fait toujours ce qu'on lui dit de faire,
    mais jamais, ce qu'on pense lui avoir dit de faire !
    0
  12. MUNIR21
     
    JE VEUX AVOIR LA SOMME DES QUANTITES D'UN ARTICLE X QUI SE REPETE DANS UNE COLONNE ET CE EN L'ANNEE 2007 CAR IL Y A D'AUTRES QUANTITES EN L'ANNEE 2008.
    MERCI DE ME REPONDRE
    0
  13. james10
     
    Bonsoir à tous,

    Je viens de découvrir votre forum, et je pense qu'ici je devrais trouver les réponses qu'il me manque.
    J'ai lu plus haut que les cellules vides d'une colonne utilisée en sommeprod ne causent pas d'incident sur le résultat de cette même fonction. Pourriez vous me dire s'il celà est exact ou autrement comment résoudre ce problème.
    Exemple de la formule : SOMMEPROD((GAUCHE(UF;3)=GAUCHE($A$2;3))*((UT=B$3)+(UT=B$4))*(MODENT<>"")*(IPP>0)) --> Résultat = #N/A
    La colonne MODENT contient 2 cellules vides
    Merci d'avance
    JB
    0
  14. gbinforme Messages postés 14930 Date d'inscription   Statut Contributeur Dernière intervention   4 744
     
    bonjour

    Chaque fonction excel a une syntaxe et sommeprod fonctionne correctement si toutes les plages ont la même longueur.

    Tant que tu mélangeras des tests avec des "+" et des "*" tu devrais avoir une erreur.

    Syntaxe
    
    SOMMEPROD(matrice1;matrice2;matrice3,...)
    
    matrice1, matrice2, matrice3, ...   représentent de 2 à 30 matrices dont vous voulez multiplier les valeurs pour ensuite additionner leur produit. 
    
    
    0
  15. gbinforme Messages postés 14930 Date d'inscription   Statut Contributeur Dernière intervention   4 744
     
    bonjour

    Comme son nom l'indique, SOMMEPROD est prévu pour faire des produits et non des divisions.

    Ta formule fonctionne tout de même et si sur ton tableau elle ne fonctionne pas c'est que dans ta plage il doit y avoir des cellules non documentées correctement et qui provoquent des divisions par zéro : à vérifier.
    0
  16. martial
     
    http://www.excelabo.net/pasapas/sommeprod2

    essaie avec cette astuce
    0