Nb.si sur deux conditions

Sofhy

XLDnaute Occasionnel
Bonjour le forum,

J'ai un tableau où je souhaite faire des sommes et des nb.si en fonction de deux critères.

Pour les sommes, en parcourant le forum, j'ai trouvé SommeProd. Tout fonctionne (j'ai juste une question sur cette fonction dans le fichier joint).

Je me doute bien que la question à déjà due être traitée, mais je ne trouve rien sur le forum en ce qui concerne le Nb.si sur deux conditions, je ne dois pas mettre les bons critères de recherche.

Si vous pouviez m'aider pour cette formule ou m'envoyer sur un fil où le cas a été traité.
Je vous joins un fichier.
Le calcul est dans l'onglet "Résultat"

Merci par avance,
Sofhy
 

Pièces jointes

  • Nb si plusieurs critères.xls
    40.5 KB · Affichages: 81

david84

XLDnaute Barbatruc
Re : Nb.si sur deux conditions

Bonjour,
pour sommeprod, à placer en B2 :
=SOMMEPROD((Matrice!$B$2:$B$25=Résultat!$A2)*(Matrice!$C$2:$C$25=STXT(B$1;TROUVE(" ";B$1)+1;99)))
NB.SI, ne peut prendre en compte 2 conditions.
Si tu es sous XL 2007, tu peux utiliser la fonction NB.SI.ENS qui te permet de cumuler les conditions.
A+
 

Sofhy

XLDnaute Occasionnel
Re : Nb.si sur deux conditions

Bonjour TotoTiti2008,
Bonjour david84,

Merci pour vos réponses.

@TotoTiti2008,
Je viens de lire l'aide Excel concernant la fonction Decaler. Je vais regarder des exemples plus concret dans le forum pour essayer de l'adapter à mon fichier.
Si je patauge je reviendrai sur le fil.

A++,
Sofhy
 

Sofhy

XLDnaute Occasionnel
Re : Nb.si sur deux conditions

Re,

@Tototiti2008,

En essayant d'adapter ta formule à mon fichier, j'ai vu la formule "décaler" dans "insertion - nom".

Est-ce que tu pourrais me l'expliquer ? J'ai regardé, mais je ne suis pas sure de mes déductions, car j'ai un peu de mal à comprendre cette fonction toute nouvelle ...

Code:
=DECALER(Matrice!$B$1;1;0;MAX(0;NBVAL(Matrice!$A:$A)-1);1)

Je me lance quand même :D :
=DECALER(Matrice!$B$1;1;0 : "se positionne en B2" et pas de changement sur la colonne.
MAX(0;NBVAL(Matrice!$A:$A)-1);1) "on demande la valeur maxi entre 0, le nombre de valeur de la colonne A -1 (dernier cellule remplie ?) et 1.
Je suppose que c'est ce qui permet de borner la longueur de la colonne B. Mais pourquoi fait-on appel à la colonne A.

Help ... :(

Sofhy
 

tototiti2008

XLDnaute Barbatruc
Re : Nb.si sur deux conditions

Re,

Je suppose que c'est ce qui permet de borner la longueur de la colonne B. Mais pourquoi fait-on appel à la colonne A

C'est exactement ça
Je fait appel à la colonne A parce qu'elle contient des codes et je suis parti du principe qu'elle sera toujours remplie
NBVAL ne compte que les cellules remplies

DECALER permet à la fois de décaler une plage mais aussi de la redimensionner
La fonction MAX est là pour éviter d'avoir des valeurs négatives dans la taille de la plage

en espérant que ça clarifie un peu les choses

Edit : j'avais mal lu :

on demande la valeur maxi entre 0, le nombre de valeur de la colonne A -1 (dernier cellule remplie ?) et 1

On demande la valeur maxi entre 0 et le nombre de valeurs de la colonne -1
Le 1 à la fin précise le nombre de colonne renvoyé par DECALER : c'est le dernier argument de DECALER
 
Dernière édition:

Discussions similaires

Membres actuellement en ligne

Aucun membre en ligne actuellement.

Statistiques des forums

Discussions
312 294
Messages
2 086 895
Membres
103 404
dernier inscrit
sultan87