somme si (verticale et horizontale)????

Sandy

XLDnaute Nouveau
Bonjour,

j'aimerais faire une formule qui ressemblerai à ceci: si le titre de ligne 1 égale "ville" faire recherche de montreal dans cette colonne et faire la somme des colonnes qui ont comme titre en ligne 1 : pomme et fraise
Est-ce possible et comment? Voir mon fichier excel ci-joint pour le petit tableau.


Toutefois, tout ce que j'ai en ce moment est statique: = somme.si(B:B;"Montreal";C:C)+somme.si(B:B;"Montreal";E:E)
Mais, je voudrais que si les colonnes changes de place… ma formule fonctionne quand même.

:)
Merci à l'avance
Sandy
 

Pièces jointes

  • somme-si (verticale & horizontale).xls
    13.5 KB · Affichages: 704

Sandy

XLDnaute Nouveau
Re : somme si (verticale et horizontale)????

Wow , merci

Ca fonctionne tres bien, mais je me demandais si il était possible de faire la somme de plusieurs colonnes ayant des noms semblables.
Par exemple: pomme1, pomme2 et pomme3
en mettant une * apres le mot pomme par exemple?
SOMMEPROD((B2:B5=B7)*DECALER(B2:B5;0;EQUIV("Pomme*";C1:E1;0)))+SOMMEPROD((B2:B5=B7)*DECALER(B2:B5;0;EQUIV(B9;C1:E1;0)))

Merci encore
 

JeanMarie

XLDnaute Barbatruc
Re : somme si (verticale et horizontale)????

Bonjour Sandy, ninbihan

Sur la base du fichier de 23 h 00, on peut simplifier la formule
Code:
=SOMMEPROD(INDEX(C1:E5;EQUIV(B2;B:B;0);0)*(C1:E1=B8:B9))

Pour ce qui est des noms semblables
Code:
=SOMMEPROD(INDEX(C1:E5;EQUIV(B2;B:B;0);0)*NB.SI(DECALER(B1;;COLONNE(A1:C1));B8:B9&"*"))

La plage définie dans la fonction COLONNE, doit toujours commencer à la colonne A et sa longueur doit être égale à la plage définie dans la fonction INDEX.

@+Jean-Marie
 

Sandy

XLDnaute Nouveau
Re : somme si (verticale et horizontale)????

Merci Jean-Marie,

Ca fonctionne tres bien à l'horizontale, mais si je voudrais aussi que ca fonctionne verticalement??? est-ce possible?

Cette formule ci fonction tres bien quand on regarde sur la ligne, mais j'essaie de l'appliquer à la verticale.... car là ca fait juste la somme du premier Montreal, s'il y en a d'autres en ligne 3 ou 4, il ne les prends pas en considération???
=SOMMEPROD(INDEX(C1:E5;EQUIV("Montreal*";B:B;0);0)*NB.SI(DECALER(B1;;COLONNE(A1:C1));B8:B9&"*"))

Merci encore
Sandy
 

JeanMarie

XLDnaute Barbatruc
Re : somme si (verticale et horizontale)????

Bonsoir Sandy

Une proposition de formule, mais cette fois, il faut la valider par les touches Ctrl+Shift+Entrer
Code:
=SOMME(TRANSPOSE(FREQUENCE(SI(ESTNUM(CHERCHE(B8:B9;C1:E1));COLONNE(A1:C1));COLONNE(A1:C1)))*(C2:F5*(B2:B5=B7)))
Concernant les plages définies :
- dans la fonction COLONNE, elle doit être de même longueur que la plage C1:E1, le début sur la première colonne n'est pas obligatoire.
- C2:F5, elle doit avoir une colonne en plus par rapport à la plage C1:E1, les cellules de la colonne supplémentaire doivent être vides, des données numériques fausseraient le résultat, et des données texte provoqueraient des erreurs. Le rajout de la colonne supplémentaire est dû à l'emploi de la fonction FREQUENCE.

L'emploi de la fonction TRANSPOSE est nécessaire pour basculer la matrice d'un sens vertical à un sens horizontal. Cette fonction impose la validation par les trois touches.

J'espère que ces quelques explications te permettront d'adapter la formule à ton fichier.

@+Jean-Marie
 

Discussions similaires

Réponses
3
Affichages
334

Statistiques des forums

Discussions
312 932
Messages
2 093 727
Membres
105 801
dernier inscrit
ilitch