[Calc] formule matricielle

Bonjour,

J'ai du travaillé sur un cas un peu complexe cet après midi.
Je souhaitais utiliser une fonction matricielle pour additionner une colonne en fonction de plusieurs conditions
J'ai d'abord tenté avec SOMME.SI mais il semble que la plage de critère soit limitée (il n'a pas voulu d'un SI au milieu)
Je suis donc retournée à la bonne vieille méthode qui consiste à écrire :
Objectif : additionner toutes les cellules de mes plages qui contiennent toto et dont la colonne R (même ligne)= "x"

{=SOMME(SI(ET(A1:A1="toto";R1:R5="x");1;0))} avec un beau CTRL + Shift + entrée
Aucune erreur remontée mais toujours 0 en résultat :frowning:

Ma question :
Ai-je fait une erreur simple dans ma formule
ou
Est-il possible d'utiliser la fonction ET (ou OU) dans ce type de fonction.

Merci de votre aide. J'ai trouvé cependant une autre solution mais j'aimerais bien savoir si je peux faire mieux.
Marie jo

Bonsoir Marie Jo et tout le monde,

Pas certain de vraiment répondre à ta question, mais je vois plus simple (en matriciel) :
=SOMME((A1:A5="toto") * (R1:R5 = "x"))
donc :
{=SOMME((A1:A5="toto") * (R1:R5 = "x"))}

bon surf,
Christian

Bonsoir,

je ne comprends pas bien la structure des données auxquelles la formule se réfère, mais je vais essayer tout de même.

Dans l'exemple, seule une cellule contient "toto" c'est A1.
Les cellules R1 à R5 contiennent-elles toutes la même valeur "x" ? La mention "même ligne" m'étonne car il s'agit d'une colonne.
Dans ce cas, quel dénombrement attends-tu ? Le nombre de "x" ou la valeur "1" ?
La formule ci-dessus me donne le résultat "1" et non "5" comme j'aurai tendance à l'imaginer.
N'est-ce pas dû au fait les 2 zones n'ont pas la même dimension ?

Par ailleurs, j'utilise souvent une autre méthode pour combiner des conditions au lieu de la fonction ET
=si((condition 1)*(condition 2)*(condition 3);résultat si vrai;résultat si faux)

La syntaxe y gagne en clarté et souplesse.

Je suis conscient de ne guère faire avancer la chose, mais si ça peut donner des pistes.
C_Lucien

Bonjour,

Bonjour,

J'ai du travaillé sur un cas un peu complexe cet après midi.
Je souhaitais utiliser une fonction matricielle pour additionner une colonne en fonction de plusieurs conditions
J'ai d'abord tenté avec SOMME.SI mais il semble que la plage de critère soit limitée (il n'a pas voulu d'un SI au milieu)
Je suis donc retournée à la bonne vieille méthode qui consiste à écrire :
Objectif : additionner toutes les cellules de mes plages qui contiennent toto et dont la colonne R (même ligne)= "x"

{=SOMME(SI(ET(A1:A1="toto";R1:R5="x");1;0))} avec un beau CTRL + Shift + entrée
Aucune erreur remontée mais toujours 0 en résultat :frowning:

Ma question :
Ai-je fait une erreur simple dans ma formule
ou
Est-il possible d'utiliser la fonction ET (ou OU) dans ce type de fonction.

Merci de votre aide. J'ai trouvé cependant une autre solution mais j'aimerais bien savoir si je peux faire mieux.
Marie jo

Bonsoir Marie Jo et tout le monde,

Pas certain de vraiment répondre à ta question, mais je vois plus simple (en matriciel) :
=SOMME((A1:A5="toto") * (R1:R5 = "x"))
donc :
{=SOMME((A1:A5="toto") * (R1:R5 = "x"))}

Merci, je vais essayer. Gérard m'a remonté la même chose

Marie-Jo