Formule NB.SI.ENS avec plusieurs critères pour Excel 2010 [Résolu/Fermé]
Signaler
zizoudpsp
zizoudpsp
- Messages postés
- 147
- Date d'inscription
- dimanche 16 octobre 2016
- Statut
- Membre
- Dernière intervention
- 27 juillet 2018
zizoudpsp
- Messages postés
- 147
- Date d'inscription
- dimanche 16 octobre 2016
- Statut
- Membre
- Dernière intervention
- 27 juillet 2018
A voir également:
- Nb.si.ens ou
- Excel nb.si.ens ou - Meilleures réponses
- Nb.si.ens avec ou - Meilleures réponses
- NB.SI.ENS et condition OU ✓ - Forum - Excel
- Nb.si.ens différent de ✓ - Forum - Excel
- Nb.si.ens plusieurs critères même colonne ✓ - Forum - Excel
- Nb.si.ens non vide ✓ - Forum - Excel
- Nb.si.ens contient texte ✓ - Forum - Excel
12 réponses
gbinforme
- Messages postés
- 14934
- Date d'inscription
- lundi 18 octobre 2004
- Statut
- Contributeur
- Dernière intervention
- 24 juin 2020
Bonjour,
Pas sûr que ton tableau soit adapté à la formule NB.SI.ENS, je verrais plutôt ceci :
Pas sûr que ton tableau soit adapté à la formule NB.SI.ENS, je verrais plutôt ceci :
=INDEX(C3:N23;EQUIV($R$2;B3:B23;0);EQUIV($Q$2;C2:N2;0))
via55
- Messages postés
- 12907
- Date d'inscription
- mercredi 16 janvier 2013
- Statut
- Membre
- Dernière intervention
- 18 janvier 2021
Bonjour à vous deux
1) NB.SI.ENS dénombre mais ne fait pas la somme, donc ta formule renvoie 1 puisqu'il trouve une fois Paris
Pour sommer il faut utiliser SOMME.SI pour sommer et inutile d'utiliser SOMME.SI.ENS puisqu'il n'y a qu'un seul critère celui de l'arrondissement; quant à la plage à sommer la colonne doit se décaler selon le mois donc il faut la trouver avec la fonction DECALER en fonction du mois choisi
soit pour que tu aies le bon résultat en fonction des choix dans tes 2 listes déroulantes :
=SOMME.SI(B3:B23;R2;DECALER(B3:B23;;Q2))
2) Mais dans un cas comme cela où il faut rechercher dans un tableau une valeur à l'intersection d'une valeur en ligne et d'une autre en colonne c'est INDEX EQUIV comme te le suggère gbinforme qui est la formule la plus adaptée
D'ailleurs sa formule peut se simplifier puisque la colonne que dois retourner INDEX a forcément le même rang que celui du mois choisi, donc :
=INDEX(C3:N23;EQUIV($R$2;B3:B23;0);$Q$2)
Cdlmnt
Via
1) NB.SI.ENS dénombre mais ne fait pas la somme, donc ta formule renvoie 1 puisqu'il trouve une fois Paris
Pour sommer il faut utiliser SOMME.SI pour sommer et inutile d'utiliser SOMME.SI.ENS puisqu'il n'y a qu'un seul critère celui de l'arrondissement; quant à la plage à sommer la colonne doit se décaler selon le mois donc il faut la trouver avec la fonction DECALER en fonction du mois choisi
soit pour que tu aies le bon résultat en fonction des choix dans tes 2 listes déroulantes :
=SOMME.SI(B3:B23;R2;DECALER(B3:B23;;Q2))
2) Mais dans un cas comme cela où il faut rechercher dans un tableau une valeur à l'intersection d'une valeur en ligne et d'une autre en colonne c'est INDEX EQUIV comme te le suggère gbinforme qui est la formule la plus adaptée
D'ailleurs sa formule peut se simplifier puisque la colonne que dois retourner INDEX a forcément le même rang que celui du mois choisi, donc :
=INDEX(C3:N23;EQUIV($R$2;B3:B23;0);$Q$2)
Cdlmnt
Via
via55
- Messages postés
- 12907
- Date d'inscription
- mercredi 16 janvier 2013
- Statut
- Membre
- Dernière intervention
- 18 janvier 2021
Re
Alors avec le mois x en Q2 :
=SOMME(DECALER(INDIRECT("C"& EQUIV(R2;B1:B23;0));;;;Q2))
Cdlmnt
Via
Alors avec le mois x en Q2 :
=SOMME(DECALER(INDIRECT("C"& EQUIV(R2;B1:B23;0));;;;Q2))
Cdlmnt
Via
via55
- Messages postés
- 12907
- Date d'inscription
- mercredi 16 janvier 2013
- Statut
- Membre
- Dernière intervention
- 18 janvier 2021
Re,
Cette fois il s'agit de faire la somme d'une ligne qui part de la colonne C en ligne de l'arrondissement choisi jusqu'à la colonne du mois terminal choisi
le n° de ligne est donné par EQUIV qui va chercher ou se trouve la valeur R2 dans la plage B1:B23 et on reconstruire une adresse avec INDIRECT (d'où le C) et à partir de cette cellule (par ex C5) avec la la fonction DECALER on décale en largeur du nombre de colonne correspondant au mois choisi (6 si on choisit juin par ex)
La formule fait ensuite la somme de la plage ainsi définie
Cdlmnt
Via
Cette fois il s'agit de faire la somme d'une ligne qui part de la colonne C en ligne de l'arrondissement choisi jusqu'à la colonne du mois terminal choisi
le n° de ligne est donné par EQUIV qui va chercher ou se trouve la valeur R2 dans la plage B1:B23 et on reconstruire une adresse avec INDIRECT (d'où le C) et à partir de cette cellule (par ex C5) avec la la fonction DECALER on décale en largeur du nombre de colonne correspondant au mois choisi (6 si on choisit juin par ex)
La formule fait ensuite la somme de la plage ainsi définie
Cdlmnt
Via
zizoudpsp
- Messages postés
- 147
- Date d'inscription
- dimanche 16 octobre 2016
- Statut
- Membre
- Dernière intervention
- 27 juillet 2018
Bonjour, IMPECCABLE ça fonctionne merci beaucoup de votre aide. Heureusement que ce forum existe et encore merci. Cordialement, zizou
zizoudpsp
- Messages postés
- 147
- Date d'inscription
- dimanche 16 octobre 2016
- Statut
- Membre
- Dernière intervention
- 27 juillet 2018
Re, dans ce tableau je dois faire aussi le cumul du mois de (janvier à x). Merci de votre aide. Cordialement, zizou
zizoudpsp
- Messages postés
- 147
- Date d'inscription
- dimanche 16 octobre 2016
- Statut
- Membre
- Dernière intervention
- 27 juillet 2018
Je te remercie, pourrais-tu? STP m'expliquer cette formule et à quoi correspond la lettre "C"? Par avance, je te remercie. Cordialement, Zizou
zizoudpsp
- Messages postés
- 147
- Date d'inscription
- dimanche 16 octobre 2016
- Statut
- Membre
- Dernière intervention
- 27 juillet 2018
C'est super coll, ça fonctionne il va falloir que je l'intègre dans mon tableau. Bien cordialement, Zizou.
Si, je n'y arrive pas je reviendrai vers toi, merci de ta compréhension et de ta patience.
Si, je n'y arrive pas je reviendrai vers toi, merci de ta compréhension et de ta patience.
zizoudpsp
- Messages postés
- 147
- Date d'inscription
- dimanche 16 octobre 2016
- Statut
- Membre
- Dernière intervention
- 27 juillet 2018
Bonsoir Via55, la formule c'est : =SOMME(DECALER(INDIRECT("BH"& EQUIV(AO9;BG8:BG28;0));;;;AO6)), ça fonctionne sauf qu'elle compte jusqu'au mois d'août (total 28). j'ai essayé 7ème mois du 7ème arrondissement le total est de 20 et non 28. J'ai suivi ton explication BH étant la première cellule, AO9 arrondissement et AO6 mois, BG8 à BG28 c'est l'arrondissement. Merci... Cordialement, Zizou
via55
- Messages postés
- 12907
- Date d'inscription
- mercredi 16 janvier 2013
- Statut
- Membre
- Dernière intervention
- 18 janvier 2021
Envoies moi ton fichier via cjoint que je regarde ça
zizoudpsp
- Messages postés
- 147
- Date d'inscription
- dimanche 16 octobre 2016
- Statut
- Membre
- Dernière intervention
- 27 juillet 2018
Bonjour et je te joins l'image du tableau https://www.cjoint.com/c/GIrcwZ68zCP (certaines données sont sensible) merci de ta compréhension. Je te souhaite un bon dimanche et encore merci. Bien cordialement, Zizou
zizoudpsp
- Messages postés
- 147
- Date d'inscription
- dimanche 16 octobre 2016
- Statut
- Membre
- Dernière intervention
- 27 juillet 2018
Bonsoir Via55, j'ai réussi à adapter la formule dans mon tableau. Encore merci de ton aide et merci à toute les personnes qui nous donnent de leur temps et partage leurs connaissances. Cordialement, zizou