Extraire un nombre avec plusieurs arguments "complexes"

Fermé
benjyrower Messages postés 2 Date d'inscription dimanche 24 avril 2016 Statut Membre Dernière intervention 24 avril 2016 - 24 avril 2016 à 05:14
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 - 26 avril 2016 à 09:43
Bonjour,

J'ai déjà passé beaucoup de temps à chercher la formule miracle pour extraire un nombre depuis un tableau excel, mais les arguments que j'impose sont assez complexes, et j'ai épuisé toutes mes connaissances... ce n'est plus de mon niveau ! Et j'appelle à l'aide.

Colonne A: Etat de commande (Réalisé, Reste à réaliser, Supprimé)
Colonne B: Entreprise (des personnes de la colonne C)
Colonne C: Nom des personnes qui passe commande

J'ai détourné et simplifier mon tableau d'origine pour faire un cas plus simple.

Le but de la manœuvre est de connaitre par entreprise le nombre de personne ayant réalisé une commande, puis "reste à réaliser", puis "supprimé".

ARGUMENT IMPORTANT:
Il faut compter le NOMBRE DE PERSONNES ayant réalisé une commande, et non le nombre de commande.

-> Si la personne a "réalisé" plusieurs commandes, ceci compte pour 1
-> Si l'état des commandes de la même personne sont "réalisé", "reste à réaliser", et "supprimé", ceci compte pour 1. Car elle en a réalisé au moins une.
=> si la personne a une commande "réalisé", elle ne comptera pas pour ses autres commandes "supprimé" ou "reste à réaliser"
=> Si la personne a une commande "à réaliser" et que les autres sont "supprimées" -> la personne compte uniquement dans "à réaliser"

Et faire la même formule pour compter le nombre de personnes où l'état de commande est "reste à réaliser", idem pour "supprimé"


J'ai essayé plusieurs embriquements de formules en tout genre, mais il y avait toujours un cas en particulier empêchait la exactitude de la formule. (Nb.si.ens, Nb.si, si, somme.si.ens, sommeprod, recherchev, N(valeur),...)
On pourra échanger dessus si besoin.

Ci-joint, le tableau en question.

En vous remerciant de bien vouloir m'aider et de mettre sur la bonne voie...

Cordialement,








A voir également:

4 réponses

Raymond PENTIER Messages postés 58676 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 3 octobre 2024 17 203
24 avril 2016 à 05:37
Bonjour, et bienvenue au nouveau membre.

Tu as découvert comment joindre une image ; c'est joli, mais pour nous, il est plus intéressant que tu joignes le fichier Excel, pour nous éviter de le fabriquer de nouveau ...
 1) Tu vas dans https://www.cjoint.com/ 
2) Tu cliques sur [Parcourir] pour sélectionner ton fichier (8192 Ko maxi)
3) Tu défiles vers le bas pour cliquer sur le bouton bleu [Créer le lien Cjoint]
4) Au bout de quelques secondes la deuxième page s'affiche, avec le lien en gras ; tu le sélectionnes et tu fais "Copier"
5) Tu reviens dans ta discussion sur CCM, et dans ton message de réponse tu fais "Coller".
=>Voir la fiche https://www.commentcamarche.net/faq/29493-utiliser-cjoint-pour-heberger-des-fichiers
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 306
Modifié par michel_m le 24/04/2016 à 10:06
Bonjour
il est vrai qu'une photo plutôt que le classeur m'a faire perdre pas mal de temps inutile! alors juste pour un cas, pour la réalité du classeur, tu te.... (au choix)
pas évident: doliprane conseillé

a partir d'une astuce de Jacques Boisgontier
pour "réalisé" en E3, "Peugeot" en H2
en H3
==ARRONDI.SUP(SOMME(SI((NB.SI(C2:C100;C2:C100)<>"")*(B2:B100=H2)*(A2:A100=E3);1/NB.SI(C2:C100;C2:C100);""));0)

Formule matricielle à valider par « ctrl+maj+entrée » (et non directement par « entrée »), le curseur clignotant dans la barre de formule. La formule est alors encadrée automatiquement par des accolades : { formule }

mais j'ai un doute... :o/

 Michel
0
benjyrower Messages postés 2 Date d'inscription dimanche 24 avril 2016 Statut Membre Dernière intervention 24 avril 2016
24 avril 2016 à 13:59
Bonjour,

Tout d'abord merci pour votre réactivité.
J'avais bien essayé de joindre l'Excel, mais je ne connaissais pas l'astuce. Merci !
Donc voici le format le Excel:
https://www.cjoint.com/c/FDylFEJHH0F

michel_m, merci pour cette formule habile, j'ai cru qu'elle marcherai mais en faisant quelques modifications dans le tableau de saisie, j'ai pu constater qu'elle possédait une faille, mais je ne sais pas laquelle et ne comprend pas pourquoi.
En saisissant la formule dans le tableau, la cellule renvoi la bonne valeur.

Mais,
=> Si on modifie A6 et que l'on saisit: "reste à réaliser", la formule ne compte plus Yves du tout, alors qu'en ligne 15, Yves a pourtant bien "réalisé" une commande.
=> Et si en C25, une personne de l'entreprise "Citroen" prénomé Albert comme chez Peugeot. (C25 -> Albert). La formule saisit en H3 m'enlève Albert de Peugeot qui a réalisé une commande.

Est il possible d'ajuster la formule pour satisfaire les conditions.
J'ai jamais autant bloqué sur une formule... J'ai toujours une condition qui n'est pas respectée. C'est un vrai problème que l'on pourrait poser en étude supérieur.

En vous remerciant et à bientôt,
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 306
26 avril 2016 à 09:43
Bonjour,
je ne t'avais oublié mais beaucoup de trucs à faire en ce moment: peut-^tre à partir de demain pm + calme !

sur ton classeur dans Peugeot, peux tu mettre des exemples avec "supprimé" pour montrer l'incidence sur le comptage ? d'avance merci

solution certainement par VBA


0