Microsoft 365 Comment trier et filtrer en même temps plusieurs plages de données ?

Fredo73

XLDnaute Nouveau
Bonjour

Etant un utilisateur Excel débutant et nouveau sur le forum, je ne suis pas certain que l’objet de la demande soit pertinent.

Cela fait plusieurs semaines que je cherche en vain à trier et filtrer des données issues de plusieurs plages de cellules.
Enfin, j’imagine que c’est la solution à mon problème ☹

J’ai essayé les fonctions TRIER ; FILTRE ; INDEX et EQUIV ; etc. sans réussir à faire ce que je souhaite.

Plutôt que de me lancer dans une grande explication « hasardeuse » , je joins le fichier Excel qui explique mon cas.

Merci de votre aide
 

Pièces jointes

  • PB EXCEL.xlsx
    15 KB · Affichages: 8

sylvanu

XLDnaute Barbatruc
Supporter XLD
Bonsoir Fredo, Vgendron, Simply,
Le VBA reste la meilleure solution.
Mais, just for the fun, une approche formule est possible mais vraiment indigeste.
Un premier tableau Tri ( à masquer ) avec simplement une concaténation : =C4&G4&K4&O4
Un second tableau avec :
VB:
Première colonne :
=INDEX(S$4:S$7;EQUIV(PETITE.VALEUR(NB.SI(S$4:S$7;"<"&S$4:S$7);LIGNE(1:1));NB.SI(S$4:S$7;"<"&S$4:S$7);0))
Validation par Maj+ctrl+Entrée car matriciel.

Autres colonnes :
=INDEX(T$4:T$7;EQUIV($X4;$S$4:$S$7;0))
A noter que dans le second tableau les cellules vides sont en premier car pour XL un vide est avant le "A"
 

Pièces jointes

  • PB EXCEL.xlsx
    22.7 KB · Affichages: 8

Fredo73

XLDnaute Nouveau
hello

une solution par macro
le resultat est mis en colonne W==> suffit d'adapter le code pour mettre en colonne S
à noter: ton tri alpha n'est pas bon partout
Merci Vgendron pour cette proposition de macro
Je regarde cela attentivement dans la semaine, mais il me semble que la macro tri bien la colonne S, mais que le filtre mélange les données en T,U, V
En tout cas encore merci, c'est une bonne piste
 

Fredo73

XLDnaute Nouveau
Bonsoir Fredo, Vgendron, Simply,
Le VBA reste la meilleure solution.
Mais, just for the fun, une approche formule est possible mais vraiment indigeste.
Un premier tableau Tri ( à masquer ) avec simplement une concaténation : =C4&G4&K4&O4
Un second tableau avec :
VB:
Première colonne :
=INDEX(S$4:S$7;EQUIV(PETITE.VALEUR(NB.SI(S$4:S$7;"<"&S$4:S$7);LIGNE(1:1));NB.SI(S$4:S$7;"<"&S$4:S$7);0))
Validation par Maj+ctrl+Entrée car matriciel.

Autres colonnes :
=INDEX(T$4:T$7;EQUIV($X4;$S$4:$S$7;0))
A noter que dans le second tableau les cellules vides sont en premier car pour XL un vide est avant le "A"
Bonsoir Sylvanu
La concaténation ne fonctionne que s'il y a une seule série de données par ligne. S'il y a plusieurs données sur une ligne cela ne fonctionne pas, ce qui pourra être le cas sur le tableau que je souhaite utiliser. Désolé je n'avais pas signalé ceci dans mon tableau test.
Mais, je te rejoins la VBA semble pertinente. Je vais aussi tester la proposition de Simply le week end prochain.
Je vous tiens informés.
Encore merci à tous les trois
 

Discussions similaires

Statistiques des forums

Discussions
312 177
Messages
2 085 972
Membres
103 073
dernier inscrit
MSCHOE16