Formule muticritère

Résolu/Fermé
anjou75 Messages postés 8 Date d'inscription mercredi 6 août 2014 Statut Membre Dernière intervention 8 août 2014 - 6 août 2014 à 16:28
Le Pingou Messages postés 12206 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 28 novembre 2024 - 8 août 2014 à 09:45
Bonjour,

j'ai une base de données sous exel, obtenue par un export dont ne ne maitrise pas les critères.
Cette base de données est nominative. A chaque nom sont liées plusieurs informations dans x colonnes.

Pour pour chaque nom il y a notamment 3 colonnes qui comportent des informations sur le même domaine., Mais d'un nom a l'autre la même information n'est pas nécessairement dans la même colonne, et de plus il peut y avoir pour le même nom la même information répertoriée dans deux colonnes!.

pour simplifier la compréhension voici un exemple ( dans la réalité ce seront des informations qui pourront être en chiffres ou en lettres), pour l'exemple j'ai choisi les lettres)

noms; colon.1; colon.2; colon.3;
dupont; blanc, bleu; rouge;
martin; bleu, blanc; rouge;
machin; blanc, blanc; Bleu;

j'ai donc besoin de connaitre le nombre de personnes qui contient "blanc", quelle que soit la colonne ou celà est indiqué, et en ne le comptabilisant qu'une seule fois par nom

quelle formule utiliser? et comment l'écrire?

merci par avance.

14 réponses

Le Pingou Messages postés 12206 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 28 novembre 2024 1 452
6 août 2014 à 22:22
Bonjour,
Autre possibilité avec en [G1] le nom de la valeur ( exemple :blanc) et en [G2] la formule :
=SOMMEPROD((A2:A10<>"")*((B2:B10=G1)+(C2:C10=G1)+(D2:D10=G1)>0))

1
Patrice33740 Messages postés 8556 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 2 mars 2023 1 779
6 août 2014 à 21:34
Essaies :
=SOMMEPROD((CHERCHE("blanc";$B$2:B6&$C$2:C6&$D$2:$D$6&"blanc")<NBCAR($B$2:B6&$C$2:C6&$D$2:$D$6))*1) 
0
anjou75 Messages postés 8 Date d'inscription mercredi 6 août 2014 Statut Membre Dernière intervention 8 août 2014
7 août 2014 à 15:10
je n'ai pas réussi a obtenir de résultats, les formules sont longues et je ne suis pas douée,donc je refais un tableau en utilisant des chiffres car c'est surement en transposant avec des chiffres que je me suis trompée.

je dois trouver le nombre de personnes qui disposent d'un niveau <3 dans l'une au plus des trois colonnes BCD.
N représente le niveau. N1 colonne b, N2 colonne C n3 colle D.
si une personne remplit la condition plusieurs fois, elle n'est comptabilisée qu'une seule fois. ainsi dans l'ex 3 personnes remplissent la condition et non pas 7 ( 1 col1,3 col 2 et 2 col 3) car plusieurs personnes remplissent la condition au titre de plusieurs colonnes;.

A.... B.... C.... D....
nom N1 N 2 N 3
AAa 4 5 4
bbb 3 2 3
ccc ras 3 2
eee 1 2 4
ddd 4 2 1
0
Patrice33740 Messages postés 8556 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 2 mars 2023 1 779
7 août 2014 à 15:38
Bonjour,

La formule proposée par Le Pingou (bonjour amical) fonctionne aussi dans ce cas et elle est plus simple que la mienne (bien vu ...) qui ne convient pas à ce nouveau cas.

Il suffisait de l'adapter à tes nouvelles conditions qui, si j'ai bien compris, ne sont plus les mêmes que celle de la question initiale !!!! :
=SOMMEPROD((A2:A6<>"")*((B2:B6=1)+(C2:C6=2)+(D2:D6=3)>0))
Mais peut-être n'ai-je pas compris, tu dis qu'il n'y a que 3 personnes mais tu ne précise pas lesquelles. Ma boule de cristal m'a préconisé bbb,eee et ddd

Si tu n'arrive pas écrire la formule, il suffit de faire un copier (depuis ce post) - coller (dans la cellule Excel)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
anjou75 Messages postés 8 Date d'inscription mercredi 6 août 2014 Statut Membre Dernière intervention 8 août 2014
7 août 2014 à 15:56
dans l' ex présentée je me suis trompée il y en a 4 qui réunissent la condition ( bbb, ccc, eee, ddd) ( ces 4 ont au moins un niveau <3 dans l'une des 3 colonnes).

merci, j 'ai fait un copier coller :
effectivement la formule marche j'ai simplement modifié le nombre de ligne car j'en ai 86, mais je suis surprise du résultat, qui me parait très important,

dans mon tableau j'avais des 0 je les ai remplacé par des lettres (ras) comme dans le modèle donné ci dessus, car sinon elles auraient été comptabilisées aussi comme <3 or dans les lignes en question c'était en fait une absence de niveau que je voulais indiquée.
est ce que celà peut influencer le résultat du calcul?
0
Patrice33740 Messages postés 8556 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 2 mars 2023 1 779
Modifié par Patrice33740 le 7/08/2014 à 16:10
Ça change (4 au lieu de 3) !!!
Avec tes mauvaises informations, tu as obtenu une mauvaise formule !!!

Si tu ne changes plus d'avis, cette formule devrait convenir :
=SOMMEPROD((A2:A6<>"")*((B2:B6<3)+(C2:C6<3)+(D2:D6<3)>0)

Patrice
0
Le Pingou Messages postés 12206 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 28 novembre 2024 1 452
7 août 2014 à 16:12
Bonjour,
Eh bien, une absence de niveau équivaut aussi à plus petit que 3... Oui ou Non avec ou sans bonj... ?

0
anjou75 Messages postés 8 Date d'inscription mercredi 6 août 2014 Statut Membre Dernière intervention 8 août 2014
7 août 2014 à 16:22
bonjour,
merci de passer autant de temps sur mon cas, j'avoue que c'est difficile à expliquer car j'ai un tableau très complexe

en fait j'évoque des niveaux de diplomes or le diplome le plus élevé est de niveau 1 et le plus faible est de niveau 5 , l'absence de niveau équivaut a 0 ou rien, donc si j'ai besoin des niveau inférieur à 3 j'ai en réalité besoin des niveaux les plus élevés ( niv 2 et 1)
si je mettais 0 dans la colonne de celui qui n'a pas de diplômes il sortirait comme plus petit que 3, mais ne répondrait pas du tout à ma demande qui est de connaitre combien de personnes ont un niveau supérieur en fait , c'est pour cela que j'ai remplacé 0 par des lettres.
0
Patrice33740 Messages postés 8556 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 2 mars 2023 1 779
7 août 2014 à 16:23
=SOMMEPROD((A2:A6<>"")*((B2:B6<3)*(B2:B6>0)+(C2:C6<3)*(C2:C6>0)+(D2:D6<3)*(D2:D6>0)>0))
0
Le Pingou Messages postés 12206 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 28 novembre 2024 1 452
7 août 2014 à 22:02
Merci Patrice33740, amicales salutations.
Le Pingou
0
anjou75 Messages postés 8 Date d'inscription mercredi 6 août 2014 Statut Membre Dernière intervention 8 août 2014
7 août 2014 à 16:39
pour corser le tout, pour chaque nom, j'ai trois diplômes donc 3 niveaux de diplomes, et certains peuvent avoir dans 2 colonnes différentes des diplômes de même niveau ( multi diplômés)
les 3colonnes niveaux n'étant pas dédiées à un niv particulier, je peux me retrouver avec des niv 1 dans la colonne 1, mais aussi dans la colonne 2, ou 3

l'objectif est sur un échantillon de déterminer combien de personnes ont un diplome supérieur au niveau 3 ( cad bac plus 2) sachant que cette information peut se trouver indifféremment dans l'une ou plusieurs des 3 colonnes,
et qu'il ne faut pas que celui qui détient deux diplômes de niveau 1 et 2 soit comptabilisé deux fois...

pas simple....

pour me simplifier la tache j'ai ajouté des colonnes niveaux en retravaillant la BD, mais je peux aussi avoir à chercher de la même manière combien de personnes ont tel nom de diplôme bien identifié, avec exactement la même problèmatique en termes de colonnes, sachant que dans ce cas le chiffre est remplacé par un nom!

voilà j'ai tout dit.....

merci pour votre aide, je vais essayer la nouvelle formule.
0
Patrice33740 Messages postés 8556 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 2 mars 2023 1 779
7 août 2014 à 16:49
Re,

Ça change sans arrêt !!!

Ne penses-tu pas, avoir fait perdre le temps des autres, ceux qui attendent une réponse ???

J'abandonne.
Patrice
0
anjou75 Messages postés 8 Date d'inscription mercredi 6 août 2014 Statut Membre Dernière intervention 8 août 2014
7 août 2014 à 17:14
bonjour,

j'ai essaye la dernière formule, on se rapproche très fortement du résultat, sur mon échantillonnage test je devais trouver 27 résultats, la formule m'en annonce 26.

merci encore à tous les deux, je serais bien incapable de construire de telles formules!

cordialement
0
anjou75 Messages postés 8 Date d'inscription mercredi 6 août 2014 Statut Membre Dernière intervention 8 août 2014
7 août 2014 à 17:16
bonjour,
rectification: la formule marche! je me suis rendue compte que la différence provenait d'une case vide dans les noms!
génial!
je conserve la formule bien au chaud!
merci encore!
0
anjou75 Messages postés 8 Date d'inscription mercredi 6 août 2014 Statut Membre Dernière intervention 8 août 2014
8 août 2014 à 09:25
Bonjour messieurs,

UN GRAND MERCI A TOUS LES DEUX; LA FORMULE FONCTIONNE!

Désolée, si mes explications n'étaient pas très claires. C 'est la 1ere fois que j'utilise un forum, et il n'est pas possible de copier ne fusse que partiellement un tableau, ce qui aurait facilité sans doute la tache.
Depuis le départ , j'ai toujours eu la même problématique:et j'ai sans doute voulu donner trop d'informations ce qui a embrouillé la demande:
trois colonnes pour un même individu avec des informations recherchées qui peuvent être dans l'une ou l'autre des trois colonnes, ou les 3, mais que je ne peux comptabiliser qu'une fois par individu
parfois cette information est formulée en lettres( mots), parfois en chiffres. et je pensais que la formule était la même que ce soit chiffre ou lettres ( en remplaçant dans la formule le chiffre par les lettres et vice versa).

En tout état de cause ce que j'en retire: c'est qu'il faut vérifier pour que la formule marche que toutes les cellules des colonnes soient remplies ( hier il manquait un nom dans ma 1ere colonne ce qui a faussé le résultat de la formule),
Il est possible de remplacer des chiffres par des lettres pour neutraliser la comptabilisation de la cellule. ( du moins dans les fonctions utilisées ici).

Mes tableaux peuvent comporter plus de 3000 lignes, et cette formule va me simplifier la tâche.

Encore merci

bien cordialement
0
Le Pingou Messages postés 12206 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 28 novembre 2024 1 452
8 août 2014 à 09:45
Bonjour,
Merci pour l'information.
Concerne :
et il n'est pas possible de copier ne fusse que partiellement un tableau, ce qui aurait facilité sans doute la tâche.
Eh bien ce n'est pas correct ; pour une prochaine fois vous avez la possibilité de mettre le classeur avec le tableau comme exemple sur https://www.cjoint.com/ et poster le lien dans votre message.

0