Nombre Valeur unique si condition

Bonjour,

Je cherche une formule me permettant de répondre à la question suivante dans le fichier joint:

Combien de matricule différents on été en AM (Type) sur Janvier (mois 1) dans mon tableau

Avez vous des solutions à me proposer?

Merci de votre aide !

107tableau-acotte.xlsx (8.90 Ko)

Bonjour,

=NB(1/FREQUENCE(SI((B2:B10=1)*(C2:C10="AM");A2:A10);A2:A10))

@ valider par Ctrl+Shift+Enter

@ + +

Bonjour,

un simple TCD peut faire l'affaire

P.

56acotte-xlp.xlsx (11.49 Ko)

Merci de vous être penchés sur mon problème.

Rachid: Si je fais un copier coller de votre formule sur mon classeur le résultat est "0"

Hors si je regarde bien le résultat attendu est "2" car il n'y a que 2 matricules différents qui répondent aux conditions "1" et "AM"

Peu importe que ces deux matricules soient notifier une ou plusieurs fois.

Patrick1957: c'est aussi pour ça qu'un simple croisé dynamique ne suffit pas...

Mais je ne désespère pas de trouver (avec la communauté de ce forum) la solution !!

Merci encore

Re,

Salut Patrick

voir PJ

pour que tu puisse le faire avec un TCD, il faut passer par PowerPivot disponible à partir de la version 2010 comme Addin et à partir de 2013 sans l'Addin.

@ + +

re,

le TCD autrement peux tout compter, il suffit de bouger les zones de celui-ci

P.

edit : Salut r@chid

30acotte-xlp.xlsx (11.77 Ko)

Merci Rachid.

Du coup si j'utilise un TCD , ce que je faisais jusqu'à présent, je suis obligée de compter les non nuls entre L6 et L7: résultat 2

Sauf que sur mon fichier de base, j'ai une bonne douzaine de critères, nécessairement 12 mois et environs 400 matricules...,

c'est pourquoi, je préfère le principe de la formule, étirable à volonté et surtout fiable ! car ne nécessitant aucune action de décompte manuel... (risqué)

J'ai essayé votre formule. J'ai vu qu'il y avait des {} en debut et fin de formule. Je ne sais pas à quoi cela correspond.

Si je fais un simple copier coller, il ne calcule plus la formule car le { est avant le =.

Si je supprime {} alors le résultat devient 5

Si je garde la formule telle qu'elle et que je remplace le 1 (janvier) par le 2 (fevrier), le résultat est 0... au lieu de 2

Je suis perdue....

Mais je sens qu'on s'approche du but....

MErci !!!

Re,

la formule est matricielle et comme je l'ai mis en rouge tout en haut il faut la valider impérativement par la combinaison des 3 touches Ctrl+Shift+Enter après une validation réussie on voit apparaitre les accolades.

@ + +


Re,

pour une validation classique :

=SOMMEPROD(N(FREQUENCE((B2:B10=1)*(C2:C10="AM")*(A2:A10);A2:A10)>0))

@ + +

OK, merci.

Tres tres concrètement ça veut dire quoi ?

Je me mets sur la case où je veux obtenir mon résultat et je clic sur ctr shit enter ?

Avant ou apres avoir saisi la formule? ( après je suppose ?!)

Cela implique que si je modifie cette formule (janvier à fevrier) je dois la revalider à chaque fois?

Désolée...je ne l'avais peut etre pas preciser, mais j'apprend excel toute seule, enfin avec l'aide des gens du forum, et forcement...je pars de très loin.....

Merci pour tout

Re,

  1. mets le curseur sur la cellule contenant la formule
  2. tape la touche F2 pour mettre la formule en mode édition
  3. Maintiens Ctrl+Shift enfoncées et tape Enter

@ + +

yeahhh

ça fonctionne !!!!!

Bon je tente de remettre ça dans mon fichier de base.

La base de donnée n'est pas sur le même onglet que mon tableau récapitulatif, mais je devrais m'en sortir...

Au pire...je reviendrais.....

Je ne met pas volontairement en résolu , pour me laisser le temps de faire mon mic mac et valider que ça fonctionne !!!

Merci pour tout !

Bon je valide, ça marche du tonnerre.

Ce serais abusé de te demander un autre service Rachid?

Admettons que je veuille ce résultat mais au trimestre, donc avec mois 1, 2 , et 3, il faudrait ajouter les conditions dans la formules....( Nombre de matricule unique par type en janvier et fevrier et mars)

Et si je veux par type sur l'année seulement... (nombre de matricules unique de ma base de donnée en AM)

Merci pour ton aide precieuse qui va me faire gagner un temps de malade toute l'année....

Juste un peu long à mettre en place pour valider chaque cellule, mais c'est un investissement qui en vaut la peine !!

Re,

=SOMMEPROD(N(FREQUENCE((B2:B10[surligner=#FF0000]<4)*(C2:C10="AM")*(A2:A10);A2:A10)>0))

@ + +


acotte a écrit :

Bon je valide, ça marche du tonnerre.

Ce serais abusé de te demander un autre service Rachid?

Admettons que je veuille ce résultat mais au trimestre, donc avec mois 1, 2 , et 3, il faudrait ajouter les conditions dans la formules....( Nombre de matricule unique par type en janvier et fevrier et mars)

Et si je veux par type sur l'année seulement... (nombre de matricules unique de ma base de donnée en AM)

Merci pour ton aide precieuse qui va me faire gagner un temps de malade toute l'année....

Juste un peu long à mettre en place pour valider chaque cellule, mais c'est un investissement qui en vaut la peine !!

Avec un fichier plus riches en données anonymisées je peux te donner une aide concise.

@ + +

Tu édites ta formule par F2...et avec ou sans modification, tu valides avec les 3 touches SIMULTANEMENT

ALT-CTRL-ENTER edit : SHIFT CTRL ENTER

et puis, tu peux la "tirer" vers le bas

Edit: oups ça c'est pour ta question des accolades { }

P.

Merci pour ton aide.

Je vais te faire suivre mon fichier de base, afin que tu y vois plus clair.

Le temps de l'anonymiser et je te l'envois.

MErci encore


Et voilà mon fichier (simplifié et anonymisé)

Comment faire donc pout les calculs au trimestre et à l'année?

MErci de ton aide encore une fois, elle m'est tres precieuse !!

27am-forum.xlsx (144.34 Ko)

Me revoilà

Bon tout fonctionne, j'ai même réussi à mettre la formule sur mes résultats au trimestre ( j'ai juste rajouter une colonne avant la date dans ma base de donnée, qui avec une formule SI me donne le numéro du trimestre.) Du coup avec le formule, il me suffit de mettre cette colonne en test logique et ça roule.

Par contre, pour l'année.... encore un petit hic....

Toujours là r@achid?

merci

Bonjour,

je voudrais bien t'aider mais j'ai rien compris sur ton fichier, il y trop de d'erreurs renvoyées par des formules je ne comprend pas où je dois faire le calcul puisque c'est carrément diffèrent au premier fichier.

@ te relire

Bonjour,

Sur mon fichier, c'est la case M21 que je cherche à remplir.

Il est vrai que j'ai supprimer pas mal d'onglet et de nom pour simplifier le fichier, peut être que cela génère trop d'erreur en effet.

Peut être simplement en me détaillant la formule, je devrais y arriver.

Pourquoi on met "1/Frequence" je ne comprend pas a quoi sert le 1....

Et puis plus loin quand on fais la formule sommeprod, là on met "(N(frequence"... pourquoi un N?

Merci

PS: J'avais su trouver les formule pour remplir au trimestre. donc merci encore !

Bonjour,

NB(1/FREQUENCE()) :

en fait FREQUENCE() va renvoyer des entiers y compris les 0.

en divisant 1 par les résultats de FREQUENCE() on aura une matrice des nombres décimaux y compris les erreurs de la division par 0.

NB() compte les valeurs décimales et exclue les valeurs d'erreur.

@ + +

merci pour ces explications

Donc pour avoir le nombre de valeur unique dans ma liste (admetons ma colonne A), je vais faire comment?

=nb(1/frequence($A$1:$A$500))

tout simplement?

Rechercher des sujets similaires à "nombre valeur unique condition"