XL 2021 Affichage valeur selon Filtre et puis faire un Tri

Rabeto

XLDnaute Occasionnel
Bonjour,

J'aimerai afficher la liste des valeurs de l'onglet 'Base' en fonction du filtre 'Valeur qui contient le filtre' (cellule Jaune) dans onglet 'Donnée' et faire un tri du plus grand au plus petit des valeurs après svp,

Avec le tri pas de problème, mais je n'arrive pas à faire l'affichage de la liste

De préférence, une solution macro ou formule est la bienvenue :)

TCD n'est pas vraiment la meilleur solutions pour moi, j'ai essayé mais cela ne donne pas vraiment ce que je cherche,

Merci,
 

Pièces jointes

  • Filtre et Tri.xlsx
    11.9 KB · Affichages: 5
Solution
Bonjour à tous de nouveau,

Un autre essai, toujours en deux formules uniques et dynamiques :
VB:
=LET(b;Base!B2:B51;c;Base!C2:C51;v;TRIER(c;;-1);n;TRIERPAR(Base!A2:A51;c;-1);co;TRIERPAR(DROITE(b;NBCAR(b)-CHERCHE("- ";b)-1);c;-1);FILTRE(n;co=A2;""))
et 
=LET(b;Base!B2:B51;c;Base!C2:C51;TRIER(FILTRE(c;DROITE(b;NBCAR(b)-CHERCHE("- ";b)-1)=A2;"");;-1))
Cordialement

ALS35

XLDnaute Impliqué
Avec Excel 2021 tu peux essayer en deux formules :
Pour les noms :
VB:
=FILTRE(TRIERPAR(Base!A2:A51;Base!C2:C51;-1);DROITE(TRIERPAR(Base!B2:B51;Base!C2:C51;-1);2)=A2)
Pour les valeurs :
Code:
=TRIER(FILTRE(Base!C2:C51;DROITE(Base!B2:B51;2)=A2);;-1)
On peut simplifier si tu mets les colonnes Noms et Valeurs côte à côte
Cordialement

Edit : formules modifiées
 
Dernière édition:

Rabeto

XLDnaute Occasionnel
Super, vos solutions répondent bien à ma demande,

Mais je penses que je me suis un peu mal exprimé sur le filtre, c'est maintenant que je me rend compte, désolé.
vous vous êtes basé sur la valeur du filtre (N1 par exemple) et a proposé la solution Right 2 ou droite 2

Mais si je veux juste demander de filtrer la valeur contenant N1 ou N2; car sur ma base, je peux avoir jusqu'à N20 ou N100
 

ALS35

XLDnaute Impliqué
Bonjour à tous de nouveau,

Un autre essai, toujours en deux formules uniques et dynamiques :
VB:
=LET(b;Base!B2:B51;c;Base!C2:C51;v;TRIER(c;;-1);n;TRIERPAR(Base!A2:A51;c;-1);co;TRIERPAR(DROITE(b;NBCAR(b)-CHERCHE("- ";b)-1);c;-1);FILTRE(n;co=A2;""))
et 
=LET(b;Base!B2:B51;c;Base!C2:C51;TRIER(FILTRE(c;DROITE(b;NBCAR(b)-CHERCHE("- ";b)-1)=A2;"");;-1))
Cordialement
 

Discussions similaires

Statistiques des forums

Discussions
314 422
Messages
2 109 447
Membres
110 482
dernier inscrit
ilyxxxh