A voir également:
- Macro Excel - Tri en ligne
- Aller à la ligne excel - Guide
- Liste déroulante excel - Guide
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Vente en ligne particulier - Guide
- Tri excel - Guide
4 réponses
chossette9
Messages postés
4239
Date d'inscription
lundi 20 avril 2009
Statut
Contributeur
Dernière intervention
12 septembre 2014
1 306
4 août 2011 à 17:17
4 août 2011 à 17:17
Bonjour,
d'après cette astuce, on peut définir le tri selon les lignes au lieu des colonnes.
Le mieux pour réussir ton code serait d'utiliser l'enregistreur de macro et de faire un simple tri en ligne de tes données. Ca te permettrait déjà d'avoir une bonne base pour réaliser le tri que tu souhaites faire.
Cordialement.
d'après cette astuce, on peut définir le tri selon les lignes au lieu des colonnes.
Le mieux pour réussir ton code serait d'utiliser l'enregistreur de macro et de faire un simple tri en ligne de tes données. Ca te permettrait déjà d'avoir une bonne base pour réaliser le tri que tu souhaites faire.
Cordialement.
Merci de ta réponse rapide.
J'ai testé en utilisant l'enregistreur de macros (Excel 2010):
1 - Je sélectionne mon tableau
2 - Tri personnalisé
3 - Options
4 - Tri de gauche à droite
5 - Ok
Mais le tri ne fonctionne que sur la première ligne et en plus je trouve que c'est un peu le "bordel" niveau code et j'ai dû mal à comprendre les fonctions.
Je pense que je dois voir autour de "Range(Cells(2, i)" mais pas facile à adapter quand on commence...
J'ai testé en utilisant l'enregistreur de macros (Excel 2010):
1 - Je sélectionne mon tableau
2 - Tri personnalisé
3 - Options
4 - Tri de gauche à droite
5 - Ok
Mais le tri ne fonctionne que sur la première ligne et en plus je trouve que c'est un peu le "bordel" niveau code et j'ai dû mal à comprendre les fonctions.
Je pense que je dois voir autour de "Range(Cells(2, i)" mais pas facile à adapter quand on commence...
eriiic
Messages postés
24570
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
23 avril 2024
7 214
4 août 2011 à 21:54
4 août 2011 à 21:54
Bonsoir,
Mais le tri ne fonctionne que sur la première ligne
C'est normal, la ligne est triée et les valeur qui correspondent en dessous suivent
Comme quand tu tries des colonnes, tu as une clé de tri et les données correspondantes suivent...
Si tu veux trier individuellement les lignes il faut les faire une par une
eric
Mais le tri ne fonctionne que sur la première ligne
C'est normal, la ligne est triée et les valeur qui correspondent en dessous suivent
Comme quand tu tries des colonnes, tu as une clé de tri et les données correspondantes suivent...
Si tu veux trier individuellement les lignes il faut les faire une par une
eric
En "farfouillant" sur le net, j'ai trouvé une macro qui fonctionne très bien (je me suis finalement laissé tenter par la facilité :| )
Je vous laisse le code si ça peut aider quelqu'un d'autre :
Merci à tous pour votre aide !
Je vous laisse le code si ça peut aider quelqu'un d'autre :
Sub test() Dim DerLig As Long, DerCol As Integer Dim Rg As Range, R As Range With Feuil1 If Not IsEmpty(.UsedRange) Then DerLig = .Cells.Find(What:="*", _ LookIn:=xlFormulas, _ SearchOrder:=xlByRows, _ SearchDirection:=xlPrevious).Row DerCol = .Cells.Find(What:="*", _ LookIn:=xlFormulas, _ SearchOrder:=xlByColumns, _ SearchDirection:=xlPrevious).Column End If Set Rg = .Range("A2", .Cells(DerLig, DerCol)) End With Application.ScreenUpdating = False Application.EnableEvents = False For Each R In Rg.Rows LeTriHorizontal R Next Application.EnableEvents = True Application.ScreenUpdating = True End Sub '---------------------------------------- Sub LeTriHorizontal(Plg As Range) With Plg .Sort Key1:=.Range("A1"), Order1:=xlAscending, Header:=xlNo, _ OrderCustom:=1, Orientation:=xlLeftToRight, DataOption1:=xlSortNormal End With End Sub '----------------------------------------
Merci à tous pour votre aide !