Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

tri sur plusieurs colonnes

jad73

XLDnaute Occasionnel
bonjour
je fais un tri sur 6 colonnes actuellement, il m'en faudrait 2 de plus,çi dessous le tri que j'utilises si je mets 2 colonnes de plus G et H,aurai-je des problemes.

Sub triabc1()
Range("A2:T900").Sort Key1:=Range("D3"), Order1:=xlAscending, Key2:=Range( _
"E3"), Order2:=xlAscending, Key3:=Range("F3"), Order3:=xlAscending, _
Header:=xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:= _
xlTopToBottom, DataOption1:=xlSortNormal, DataOption2:=xlSortNormal, _
DataOption3:=xlSortNormal
Range("A2:T900").Sort Key1:=Range("A3"), Order1:=xlAscending, Key2:=Range( _
"B3"), Order2:=xlAscending, Key3:=Range("C3"), Order3:=xlAscending, _
Header:=xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:= _
xlTopToBottom, DataOption1:=xlSortNormal, DataOption2:=xlSortNormal, _
DataOption3:=xlSortNormal

End Sub
merci
 

Cousinhub

XLDnaute Barbatruc
Re : tri sur plusieurs colonnes

Bonsoir,

Pas de souci...

Le principe, tu tries tout d'abord par les données de moindre importance dans ton tri..

Si tu tries sur 8, Et que tu voudrais les données triées par : A, B, C, D, E, F, G, H

tu commences par Key1 : G3, Key2 : H3

Puis la suite de ton code

Ainsi, tu tries par A, puis B, puis C.... jusqu'à H
 

Cousinhub

XLDnaute Barbatruc
Re : tri sur plusieurs colonnes

RE,

Non, tu ne peux pas...

Il te faut déterminer tes clés de tri..

Et ensuite, un tri avec 3 clés Max (limites d'Excel)

Ainsi, premier tri : G, H
2ème : D, E, F
3ème : A, B, C
 

Cousinhub

XLDnaute Barbatruc
Re : tri sur plusieurs colonnes

Re-,

et en complément, pour que tes tris fonctionnent quelque soit la version d'Excel (notamment avant 2003), évite les DataOptions..

Essaie ainsi :

Code:
Sub triabc1()
With Range("A2:T900")
    .Sort Key1:=Range("G3"), Order1:=xlAscending, Key2:=Range("H3"), Order2:=xlAscending, _
        Header:=xlGuess
    .Sort Key1:=Range("D3"), Order1:=xlAscending, Key2:=Range("E3"), Order2:=xlAscending, _
        Key3:=Range("F3"), Order3:=xlAscending, Header:=xlGuess
    .Sort Key1:=Range("A3"), Order1:=xlAscending, Key2:=Range("B3"), Order2:=xlAscending, _
        Key3:=Range("C3"), Order3:=xlAscending, Header:=xlGuess
End With
End Sub
 

Discussions similaires

Réponses
5
Affichages
318
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…