Sauvegarder ordre de tri personnalisé

Résolu
mike the llama Messages postés 330 Date d'inscription   Statut Membre Dernière intervention   -  
mike the llama Messages postés 330 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Je travaille sur un tableau Excel 2013 comportant de nombreuses lignes et colonnes.

J'ai souvent besoin de changer l'ordre de tri des lignes pour une meilleure visualisation, en sachant que je fais se succéder jusqu'à 7 niveaux dans la demande de tri.

Est-il possible de sauvegarder ces différents modes de tri ? Car je perds un temps considérable pour chaque fois indiquer quelle combinaison de niveaux je souhaite voir apparaître au niveau du tri...

Bien à vous tous !

1 réponse

Gyrus Messages postés 3334 Date d'inscription   Statut Membre Dernière intervention   526
 
Bonjour,

L'enregistreur de macro a été fait pour toi.
https://www.commentcamarche.net/contents/1374-macros-comment-les-creer

A+
1
mike the llama Messages postés 330 Date d'inscription   Statut Membre Dernière intervention   9
 
Bonjour Gyrus,

Merci pour cette solution !

J'ai réussi à créer ma macro qui marche nickel, sauf qu'elle n'agit "curieusement" (enfin pur moi) pas sur les lignes 4 et 5 de ma feuille Excel, quelles qu'elles soient (les lignes 1, 2 et 3 étant réservées aux titres).

Aurais-tu une idée d'où pourrait venir le problème ?
0
Gyrus Messages postés 3334 Date d'inscription   Statut Membre Dernière intervention   526
 
Tu peux regarder les plages associées aux tris dans ta macro.
(Macro > Modifier)

A+
0
mike the llama Messages postés 330 Date d'inscription   Statut Membre Dernière intervention   9 > Gyrus Messages postés 3334 Date d'inscription   Statut Membre Dernière intervention  
 
Oui, j'y avais jeté un coup d'oeil, mais pour ce que j'en comprends, je n'y vois rien de suspect, il me semble qu'Excel est bien censé travailler sur la plage "A4:A207", or la macro ne porte dans les faits que sur la plage "A6:A207"... :

' Trie la feuille "suivi global" de la manière la plus lisible qui soit. Raccourci = CTL+SHIFT+M.
'
' Touche de raccourci du clavier: Ctrl+Shift+M
'
ActiveWorkbook.Worksheets("suivi_global").AutoFilter.Sort.SortFields.Clear
ActiveWorkbook.Worksheets("suivi_global").AutoFilter.Sort.SortFields.Add Key _
:=Range("A4:A207"), SortOn:=xlSortOnValues, Order:=xlAscending, _
DataOption:=xlSortNormal
ActiveWorkbook.Worksheets("suivi_global").AutoFilter.Sort.SortFields.Add Key _
:=Range("CO4:CO207"), SortOn:=xlSortOnValues, Order:=xlAscending, _
DataOption:=xlSortNormal
ActiveWorkbook.Worksheets("suivi_global").AutoFilter.Sort.SortFields.Add Key _
:=Range("CJ4:CJ207"), SortOn:=xlSortOnValues, Order:=xlAscending, _
DataOption:=xlSortNormal
ActiveWorkbook.Worksheets("suivi_global").AutoFilter.Sort.SortFields.Add Key _
:=Range("AS4:AS207"), SortOn:=xlSortOnValues, Order:=xlAscending, _
DataOption:=xlSortNormal
ActiveWorkbook.Worksheets("suivi_global").AutoFilter.Sort.SortFields.Add Key _
:=Range("AD4:AD207"), SortOn:=xlSortOnValues, Order:=xlAscending, _
DataOption:=xlSortNormal
ActiveWorkbook.Worksheets("suivi_global").AutoFilter.Sort.SortFields.Add Key _
:=Range("N4:N207"), SortOn:=xlSortOnValues, Order:=xlAscending, _
DataOption:=xlSortNormal
ActiveWorkbook.Worksheets("suivi_global").AutoFilter.Sort.SortFields.Add Key _
:=Range("B4:B207"), SortOn:=xlSortOnValues, Order:=xlAscending, _
DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets("suivi_global").AutoFilter.Sort
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
End Sub
0
Gyrus Messages postés 3334 Date d'inscription   Statut Membre Dernière intervention   526 > mike the llama Messages postés 330 Date d'inscription   Statut Membre Dernière intervention  
 
La plage étant bien définie, il te reste à voir la structure de la feuille et le filtrage.
Difficile d'en dire plus sans voir le fichier.

A+
0
mike the llama Messages postés 330 Date d'inscription   Statut Membre Dernière intervention   9 > Gyrus Messages postés 3334 Date d'inscription   Statut Membre Dernière intervention  
 
Problème résolu, ou plutôt pallié !

=> Le simple fait de passer ma cellule A1 en mode "filtrer par l'icône de la cellule sélectionnée" permet de faire en sorte que la macro s'applique sur tout la plage...

Je ne suis pas sûr que cette solution soit très orthodoxe, mais c'est déjà pas mal ;)

Merci beaucoup pour ton aide, Gyrus !

++
0