XL 2016 double filtre

patugui

XLDnaute Nouveau
Bonjour,

J'ai un tableau avec :
colonne A des dates
colonne B des villes

Et je voudrai trier de maniere à ce que mes lignes soient regroupées par ville (tri par nom)
mais avec en premiere ligne de chaque nom, priorité à la date la plus ancienne (tri par date la plus ancienne)

J'ai fait le double filtre, mais ça ne donne pas ce que je veux.
ex tous les Lille regroupés, date la plus ancienne à la plus récente, puis tous les Arras regroupés ...etc.

04/06/2024LILLE
04/06/2024LILLE
04/06/2024ARRAS
04/06/2024ARRAS
05/06/2024LILLE
05/06/2024DOUAI
05/06/2024PARIS
06/06/2024DOUAI
06/06/2024LILLE
06/06/2024PARIS
07/06/2024ARRAS
 
Solution
Bonjour à tous

@patugui bienvenu sur XLD

Je te propose ce fichier

A noter que "Filtre" (comme ton titre) et "Tri" comme ce que tu décris dans ton explication n'est pas du tout la même chose . ;)

Bonus :
J'ai fais en plus le code pour ton vrai fichier voir le code VBA dans le fichier o_O

Merci de ton retour

Phil69970

XLDnaute Barbatruc
Bonjour à tous

@patugui bienvenu sur XLD

Je te propose ce fichier

A noter que "Filtre" (comme ton titre) et "Tri" comme ce que tu décris dans ton explication n'est pas du tout la même chose . ;)

Bonus :
J'ai fais en plus le code pour ton vrai fichier voir le code VBA dans le fichier o_O

Merci de ton retour
 

Pièces jointes

  • Tri sur 2 niveaux V1.xlsm
    31.5 KB · Affichages: 6

Dranreb

XLDnaute Barbatruc
Bonsoir.
VB:
Sub Tri()
   Dim RngTri As Range
   Columns(3).Insert
   Set RngTri = [A2].Resize([A1000000].End(xlUp).Row - 1, 3)
   RngTri.Sort Key1:=RngTri.Columns(2), Order1:=xlAscending, Key2:=RngTri.Columns(1), Order2:=xlAscending
   With RngTri.Columns(3): .FormulaR1C1 = "=IF(RC2<>R[-1]C2,RC1,R[-1]C)": .Value = .Value: End With
   RngTri.Sort Key1:=RngTri.Columns(3), Order1:=xlAscending, Key2:=RngTri.Columns(2), Order2:=xlAscending
   Columns(3).Delete
   End Sub
En somme 3 opérations fondamentales :
1) — Tri par Villes puis Date
2) — Dans une colonne libre ou créée à cet effet, mettre au moyen d'une formule la date la plus ancienne de chaque ville dans toutes ses lignes, et la figer.
3) — Tri par dates anciennes puis par Villes.
 

Phil69970

XLDnaute Barbatruc
Re

@patugui

As tu pu essayer les différentes solutions ?
Est ce que les réponses proposées par les différents intervenants répondent à ta question ?
Si non qu'est ce qui ne va pas ?
Si oui laquelle répond le mieux à t'on problème ?

En clair on attend tes commentaires genre :
- Cette solution de X ne fonctionne pas comme je veux car il y a un Pb ici ou quand je fais cela il se passe ceci etc ...
- Cette solution de Y fonctionne avec le fichier fourni mais quand je l'applique à mon vrai fichier le résultat devra être comme ça au lieu de comme ci etc....
-Cette solution de Z fonctionne totalement comme je veux y compris à mon vrai fichier ....
 

patugui

XLDnaute Nouveau
Bonjour à tous

@patugui bienvenu sur XLD

Je te propose ce fichier

A noter que "Filtre" (comme ton titre) et "Tri" comme ce que tu décris dans ton explication n'est pas du tout la même chose . ;)

Bonus :
J'ai fais en plus le code pour ton vrai fichier voir le code VBA dans le fichier o_O

Merci de ton retour
Bonjour,
Merci beaucoup, c'est exactement ça que je cherchais,
je n'arrive cependant pas a voir la formule du bouton "tri" que vous m'avais créé, pour que je l'affecte à mon véritable tableau.
 

Phil69970

XLDnaute Barbatruc
Re

@patugui

je n'arrive cependant pas a voir la formule du bouton "tri" que vous m'avais créé, pour que je l'affecte à mon véritable tableau.

Ce n'est pas une formule mais une macro

Tout en image :

As tu l'onglet Développeur ?
1704717812427.png


Comment ouvrir l'onglet développeur

https://www.google.com/search?client=firefox-b-d&q=activer+onglet+developpeur+

ou autrement sur ma version d'excel ...

1618601458205.png


1716889662435.png


Ou bien voir explication ici

Et pour faire le bouton
1716889991635.png


Ensuite tu choisis la couleur que tu veux
1716890078386.png


Et enfin tu sélectionnes ta forme avec le bouton droit

1716890254138.png


Tu sélectionnes la macro et OK

1716890445367.png


Bravo tu as réussi ;)
 

Discussions similaires

Statistiques des forums

Discussions
312 864
Messages
2 093 014
Membres
105 607
dernier inscrit
Grospsdresbois