Fonction NB.SI.ENS avec OU

Bonjour,

J’essaie d’ajouter un OU dans une fonction NB.SI.ENS

Vous montrer la formule sera plus simple :

=NB.SI.ENS(E:E;"=1";F:F;"=a")

Sur un tableau type

1

a

1

a

1

b

2

b

2

a

Je veux qu’il compte à la fois les a et b quand la première colonne vaut 1

Si je fais la version « simple » il faut que j’écrive :

=NB.SI.ENS(E:E;"=1";F:F;"=a") + NB.SI.ENS(E:E;"=1";F:F;"=b")

Car si j’écris juste =NB.SI.ENS(E:E;"=1";F:F;"=a") + NB.SI.ENS(F:F;"=b") la valeur est bien entendu fausse.
Dans mon cas réel (ceci est un test de fonctionnement) des conditions j’en ai déjà 5 et des équivalents de « a » et « b » j’en ai 10. Cette méthode m’obligerait à avoir une formule à rallonge inexploitable.

J’aimerais trouver une syntaxe pour rajouter ici =NB.SI.ENS(E:E;"=1";F:F;"=a"OU"=b") ou à défaut une formule équivalente le permettant.

Une idée ?

J’ai bien vu un autre poste avec un titre équivalent aux miens, mais étant donné que la réponse donnée implique dans mon cas une quantité de ligne trop conséquente je relance un poste.

Je vous remercie

Bonjour,

En ayant vos données sur la plage A1 a B5 et votre liste de critères soit a en G1 et b en G2 alors dans une des cellules de votre feuille :

=SOMMEPROD(NB.SI.ENS(B1:B5;$G$1:$G$2;A1:A5;1)*1)

Ce qui donne un résultat de 3, je vous laisse adapter à votre fichier en étendant la zone des critères.

Cdlt,

Bonjour,

Bonne piste, mais je ne pense que ça résolve mon problème.

Pour faire simple, j'automatise des calculs à partir d'un autre fichier, mais je ne peux pas mettre les critères dans une autre colonne. De plus je vais dans le paramétrage mettre des critères qui ne sont pas forcément présents dans le tableau (rajouter "=d" au cas où il vient un jour).

Je sais qu'il existerait d'autres outils ou façon de faire "plus simple" car plus adapté, mais plus compliqué à mettre en œuvre. C'est pourquoi je cherche surtout un moyen de rendre cela propre et lisible.

Est-ce que vous auriez une autre piste ?

Bonsoir,
Une proposition 365.
Cdlt.

39vince408.xlsx (9.64 Ko)
=NBVAL(FILTRE(F1:F5;(D1:D5=1)*(OU(F1:F5="a";F1:F5="b"))))

Bonjour,

Par formule matricielle à valider par CTRL + SHIFT + ENTER :

=SOMME(SI(A1:A5=1;SI(OU(B1:B5="a";B1:B5="b");1)))

Cdlt,

Re,
Si Excel 365, la formule d'Ergotamine (que je salue) ne nécessite pas la validation par Ctrl + Maj et Entrée.
Cdlt.

J'essaie de faire fonctionner la formule :

=SOMME(SI(E:E=1;SI(OU(F:F="a";F:F="b");1))) mais elle ne répond qu'à la première condition et ne prend pas en compte le SI(OU.

Et pour la seconde : =NBVAL(FILTRE(F:F;(E:E=1)*(OU(F:F="a";F:F="b")))) Il me renvoie une erreur...

J'utilise bien ctrl+maj+enter pour valider

PS : Ce n'est pas afficher comme je le pensais mais je suis sous 2016

Bonjour,

Ce n'est pas CTRL+MAJ+ENTER mais bien CTRL+SHIFT+ENTER (Shift est la touche en dessous de MAJ, celle avec la flâche vers le haut).

Chez moi elle donne bien le résultat attendu : 3. Cf fichier joint.

Pour la formule de Jean Eric que je salue également, FILTRE n'est disponible que sous EXCEL 365, d'où l'intérêt de renseigner dans son profil sa version EXCEL.

Cdlt,

7classeur1.xlsx (8.98 Ko)

Bonjour,

Je pensais que ça s'afficher automatiquement lors de l'inscription.

Ca ne marche pas non plus dans votre fichier, changer les lettres de la colonnes de droite, il ne met pas à jour le compte.

La conditions c'est =1 + "a" ou "b"

Erreur de syntaxes ?

Merci,

Je vais en profiter pour mettre une deuxième question, sur exactement le même principe mais où en fonction de conditions je calcul un âge

Je peux pas éditer un post

Ne tenez pas compte du message d'avant pour le moment.

PS : Celui là j'ai pu mais pas celui d'avant

Bonjour,

En effet ma formule avec un OU ne fonctionne pas comme je l'attendais. Je retourne donc sur mon SOMMEPROD :

=SOMMEPROD((A1:A5=1)*(($B$1:$B$5="a")+($B$1:$B$5="b")))

Si des critères doivent être rajoutés, par exemple "c" alors la formule deviendrait :

=SOMMEPROD((A1:A5=1)*(($B$1:$B$5="a")+($B$1:$B$5="b")+($B$1:$B$5="c")))

Cdlt,

Bonjour,

C'est bon j'ai eu le temps de regarder, cela fonctionne parfaitement ! Je vous remercie.

Bon une autre pour la route (je peux continuer ici ou je repost ?)

Je cherche à faire ceci :

aEn coursRésolu
aPas en cours
aEn coursPas en cours
aRésolu
bEn cours
bPas en coursRésoluPas en cours

Et que la formule compte pour chaque lettre le nombre de case remplie à droite : ici a = 6 et b = 4

Et une autre formule qui fait :

aEn coursRésolu
bEn coursEn coursRésolu
1 à 2
2 à 3

Et qui viens remplir 1 dans la cellule à droite de "1 à 2" car il y'a 2 cellule remplie pour a. Et 1 dans la cellule à droite de "2 à 3" car il y'a 3 cellule remplie pour b.

Le début de la formule pourraient être :

=SOMMEPROD((B1:B2="><")+(C1:C2="><")+(D1:D3="><");>1)*((B1:B2="><")+(C1:C2="><")+(D1:D3="><");<1))
Il manque quelques paramètre…

Bonjour,

Je clos, car la réponse à était donner et en ouvre un autre pour le reste.

Merci encore pour la réponse.

Rechercher des sujets similaires à "fonction ens"