Compter le nombre de valeur différente suivant un critère

Bonjour,

depuis ce matin je cherche une solution à mon problème toujours sans réponse. J'ai déjà écumé les sujets du forum ainsi que d'autre site sans trouver de solution.

(ouvrez le classeur ci-joint dès maintenant afin de rendre mes explications plus explicite ^^)

Je cherche à dénombrer les différentes espèces (colonne B) qui ont été contactées lors d'inventaire (somme <>0 en colonne F). J'ai fait un bref résumé de mon classeur par soucis de confidentialité et afin d'en simplifier la lecture.

A savoir que les inventaires se déroule sur plusieurs périodes qui viendront s'incrémenter à la suite de mon tableau. Je peut donc avoir des noms d'espèces en colonne B sans pour autant avoir de contact en F. De même, ils se déroulent sur plusieurs points, une ligne total par point existe donc entre chacun d'eux.

La formule cherchée est en G97

J'ai déjà essayé plusieurs type de formule Nb.si, Nb.si.ens, Sommeprod, Somme(si(X;1/Nb.si)). J'ai laissé quelques uns de mes tests sous cette cellule.

La formule qui se rapproche le plus de ce que j'attends pour le moment est un truc du type : =NB.SI.ENS($B6:$B96;"<>''";F6:F96;">0")-NB.SI.ENS($B6:$B96;"*Total*";F6:F96;">0")

mais celle-ci ne compte que le nombre de cellule non-vide.

J'ai donc essayé =NB.SI.ENS($B6:$B96;$B6:$B96;F6:F96;">0")-NB.SI.ENS($B6:$B96;"*Total*";F6:F96;">0") mais qui affiche l'erreur #VALEUR!.

Si une âme charitable veux bien me donner un coup de main...

Merci d'avance !

Cordialement

10classeur1.xlsx (18.30 Ko)

bonjour,

as-tu essayé ceci ?

=NB.SI(G6:G96;">0")

bonjour,

as-tu essayé ceci ?

=NB.SI(G6:G96;">0")

Bonjour, oui (la formule est d'ailleurs en G98 dans mon classeur) et le résultat est 14 alors qu'en réalité je n'ai que 4 espèces différentes contactées sur cette période. ça dénombre toutes mes espèces rencontrés or il me faudrait une synthèse. Je peux y arriver via un TCD mais ce serait plus simple avec une formule que je puisse répliquer à chaque période.

bonjour,

ben non, la réponse de ma formule est 4. ta formule utilise une autre colonne (F)

=somme(si(nb.si(G6:G96,G6:G96)=1,1,0))

Ctrl + Shift + Enter

bonjour,

ben non, la réponse de ma formule est 4. ta formule utilise une autre colonne (F)

En effet, autant pour moi !

Par contre ça marche uniquement pour ce premier cas. Je viens d'essayer en ajoutant des espèces (résultat attendu 9) et j'obtiens 6. (Cf doc modifié ci-joint).

8classeur1.xlsx (17.71 Ko)
=somme(si(nb.si(G6:G96,G6:G96)=1,1,0))

Ctrl + Shift + Enter

Bonjour,

toujours pas, j'obtiens 87 en l'appliquant dans mon classeur, je ne vois pas trop ce que ça calcul du coup ^^

Bonjour,

Par contre ça marche uniquement pour ce premier cas. Je viens d'essayer en ajoutant des espèces (résultat attendu 9) et j'obtiens 6. (Cf doc modifié ci-joint).

effectivement, j'avais mal compris la demande. Je pense que tu devras passer par un tableau intermédiraire, liste de toutes les espèces, une formule qui indique lesquelles ont été observées et comptage des espèces pour lesquelles on a au moins une observation.

Bonjour,

Par contre ça marche uniquement pour ce premier cas. Je viens d'essayer en ajoutant des espèces (résultat attendu 9) et j'obtiens 6. (Cf doc modifié ci-joint).

effectivement, j'avais mal compris la demande. Je pense que tu devras passer par un tableau intermédiraire, liste de toutes les espèces, une formule qui indique lesquelles ont été observées et comptage des espèces pour lesquelles on a au moins une observation.

Ok, tant pis ^^, merci quand même ! Je reste avec mes tableaux croisés dynamique pour le moment.

Mais si quelqu'un d'autre à une solution à m'apporter je suis preneur !

Bonne journée !

J'ai finalement trouvé une feinte mais je dois rajouter une colonne pas très sexy pour pouvoir faire le dénombrement.

La nouvelle colonne permet de refaire une liste d'espèces contactées pour la période =SI(F6>0;B6;""). Evidemment en faisant glisser la formule ça fait réapparaître les "total point x" où j'ai eu des contacts.

Du coup après j'ai fonctionné avec la fonction matricielle suivante, qui me permet de dénombrer uniquement les espèces :

{=SOMME(SI(H6:H96<>"";1/NB.SI(H6:H96;H6:H96)))-NB.SI(H6:H96;"*Total*")}

Ci-joint le tableau avec la formule.

Sujet résolu en partie pour le coup. J'aurai aimé ne pas à avoir à recréer de colonne...

Bonne soirée !

10classeur1.xlsx (17.51 Ko)
Rechercher des sujets similaires à "compter nombre valeur differente suivant critere"