[RESOLU] Liste triée à partir de 2 critères choisis dans 2 autres listes

TalbonJourdal Fred

XLDnaute Nouveau
Bonjour tout le monde. :)

Je ne maîtrise pas trop les formules matricielles, mais je m'y suis essayé en cherchant sur le forum ... mais j'avoue avoir encore un peu de mal pour faire ce que je veux.

Voici ce que j'aimerais faire :

J'ai 3 colonnes de données distinctes (Liste 1, 2 et 3), de même taille, qui peuvent contenir des lignes vides.
J'aimerais faire une liste dans une colonne séparée (en I4:I21 par exemple) des éléments de la liste 3 qui correspondent aux 2 critères des listes 1 et 2 que je rentrerai dans 2 cellules (F4 et G4).
Pour corser l'affaire, je voudrais faire apparaître les données de la liste 3 sans doublon et sans ligne vide.

Comme je pense que ce n'est pas très clair, je vous joins un petit fichier. :)

Je pense qu'il faut passer avec une formule matricielle, mais malheureusement, mes connaissances en la matière ne sont pas suffisantes pour réussir à faire ça, et c'est pourquoi je poste ici pour voir si vous pourriez m'aiguiller quelque peu.

Je vous remercie par avance de l'aide que vous pourrez m'apporter.
:)
 

Pièces jointes

  • ListeDonnées.xls
    36.5 KB · Affichages: 42
  • ListeDonnées.xls
    36.5 KB · Affichages: 41
Dernière édition:

gosselien

XLDnaute Barbatruc
Re : Liste triée à partir de 2 critères choisis dans 2 autres listes

Bonjour,

à défaut d eformule, tu peux faire un filtre élaboré :)

P.
 

Pièces jointes

  • ListeDonnées.xls
    40 KB · Affichages: 33
  • ListeDonnées.xls
    40 KB · Affichages: 34

GerardCalc

XLDnaute Occasionnel
Re : Liste triée à partir de 2 critères choisis dans 2 autres listes

Bonjour,

Par formule matricielle (avec LibreOffice, à tester avec Excel) :

Code:
=SIERREUR(INDEX($D$4:$D$21;PETITE.VALEUR(SI(NB.SI($F$4;$B$4:$B$21)*NB.SI($G$4;$C$4:$C$21)*NON(NB.SI($I$3:I3;$D$4:$D$21));LIGNE($B$4:$B$21)-3);1));"")
A+
 

TalbonJourdal Fred

XLDnaute Nouveau
Re : Liste triée à partir de 2 critères choisis dans 2 autres listes

Merci à vous d'avoir pris le temps de me répondre. :)

gosselien, j'avais bien pensé utiliser les filtres élaborés, mais comme les listes 1, 2 et 3 se remplissent toutes seules à partir d'une base de données, et que la liste finale triée va apparaître dans un menu déroulant, je voulais que cela se fasse sans mon intervention. Peut-être en passant par une macro.
En tout cas, merci pour l'idée. :)

GerardCalc, j'ai essayé votre formule et ça fonctionne parfaitement bien sous Excel, c'est exactement ce dont j'avais besoin :cool:. Le seul truc, c'est que ça ne trie pas les données, mais c'est déjà une grande avancée pour moi et je pense pouvoir me débrouiller avec le tri moi-même.
Un grand merci à vous. ;)
 
Dernière édition:

GerardCalc

XLDnaute Occasionnel
Re : Liste triée à partir de 2 critères choisis dans 2 autres listes

GerardCalc, j'ai essayé votre formule et ça fonctionne parfaitement bien sous Excel, c'est exactement ce dont j'avais besoin :cool:. Le seul truc, c'est que ça ne trie pas les données...
On peut filtrer avec une formule à peu près lisible, on peut aussi trier avec également une formule lisible.
Mais si l'on veut les 2 à la fois, cela relève de l'usine à gaz...

Code:
=SIERREUR(INDEX($D$4:$D$21;EQUIV(PETITE.VALEUR(SI(NB.SI($F$4;$B$4:$B$21)*NB.SI($G$4;$C$4:$C$21)*NON(NB.SI($I$3:I3;$D$4:$D$21));NB.SI($D$4:$D$21;"<="&$D$4:$D$21));1);NB.SI($F$4;$B$4:$B$21)*NB.SI($G$4;$C$4:$C$21)*NON(NB.SI($I$3:I3;$D$4:$D$21))*NB.SI($D$4:$D$21;"<="&$D$4:$D$21);0));"")
à tester.
 

TalbonJourdal Fred

XLDnaute Nouveau
Re : Liste triée à partir de 2 critères choisis dans 2 autres listes

Effectivement, c'est une belle usine à gaz, mais j'aimerais bien savoir construire ce genre d'usine quand même. ;)

J'ai recréé une colonne à côté de la liste non triée pour tester votre formule, mais il semble y avoir un petit souci car j'obtiens une nouvelle liste qui contient le même nombre d'occurrence (ça, c'est bien) mais la première valeur est répétée jusqu'à l'avant-dernière position. En revanche, la dernière occurrence est, quant à elle, correcte.

J'ai donc cherché un peu sur Internet, et j'ai trouvé la solution à mon petit problème sur l'excellent site de Jacques Boisgontier, pour le tri des valeurs (en formule matricielle). J'ai donc adapté la formule à mon exemple (dans l'encadré rouge) et cela fonctionne (j'en étais le premier étonné). :)

Je me suis permis de modifier la première formule que vous m'aviez proposé (dans l'encadré vert), qui fonctionne très bien, en renommant les plages et les cellules concernées. C'est juste pour faciliter ma compréhension.

Je vous joins donc le fichier modifié pour voir ce que cela donne. Ca pourra peut-être servir à d'autres. :)

En tout cas, un grand merci à vous pour votre aide.
 

Pièces jointes

  • ListeDonnées2.xls
    40 KB · Affichages: 28
Dernière édition:

Discussions similaires

Membres actuellement en ligne

Aucun membre en ligne actuellement.

Statistiques des forums

Discussions
312 229
Messages
2 086 426
Membres
103 206
dernier inscrit
diambote