Trier les 5 premières colones d'une ligne en décroissant

malabarbe

XLDnaute Occasionnel
Bonjour à tous

Je cherche une façon simple pour :
Trier les 5 premières colones d'une ligne en décroissant

6 8 9 13 3

Résultat recherché :
13 9 8 6 3

Merci de votre aide
 

TempusFugit

XLDnaute Impliqué
Re : Trier les 5 premières colones d'une ligne en décroissant

Tes cellules sont bien au format Standard ?

Sur mon fichier , les deux macros fonctionnent parfaitement

Les cellules sont au format Standard et contiennent uniquement les chiffres que tu as donné en exemple.
 

TempusFugit

XLDnaute Impliqué
Re : Trier les 5 premières colones d'une ligne en décroissant

Regarde cette macro exemple (à tester sur un nouveau classeur)
Tu verras que le tri se fait sur plusieurs lignes en une seule fois.

VB:
Sub macrotri()
Range("A1:E1") = Array(1, 2, 3, 4, 5)
Range("A2:E2") = Array(10, 20, 30, 40, 50)
Range("A3:E3") = Array(100, 200, 300, 400, 500)
fairepause = MsgBox("Appliquer tri décroissant")
If fairepause Then
'cela fonctionne sur plusieurs lignes, non ?
Range("A1").CurrentRegion.Sort Key1:=Range("A1"), Order1:=xlDescending, Header:=xlGuess, _
        OrderCustom:=1, MatchCase:=False, Orientation:=xlLeftToRight, _
        DataOption1:=xlSortNormal
End If
End Sub
 

malabarbe

XLDnaute Occasionnel
Re : Trier les 5 premières colones d'une ligne en décroissant

Oui, cela fonctionne

Je me suis certainement mal exprimé et je m'en excuse

Voici ma feuille :
13 8 9 6 3
3 6 9 5 2
11 13 5 16 14
3 12 8 11 5
11 12 14 10 3

Dans un premier temps, je voudrais trier les 5 cells de chaque
ligne par ordre décroissant.

Deusième temps, trier les lignes par ordre décroissant
de la col 1 à la col 5
 

TempusFugit

XLDnaute Impliqué
Re : Trier les 5 premières colones d'une ligne en décroissant

Essayes cette macro
Code:
Sub tri()
Dim c As Range
For Each c In Range([A1], [A6536].End(xlUp))
c.Resize(, 5).Sort Key1:=c, Order1:=xlDescending, Header:=xlGuess, _
        OrderCustom:=1, MatchCase:=False, Orientation:=xlLeftToRight, _
        DataOption1:=xlSortNormal
Next c
Range("A1").CurrentRegion.Sort Key1:=Range("A1"), Order1:=xlDescending, Header:=xlGuess, _
        OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
        DataOption1:=xlSortNormal
End Sub
 

Discussions similaires

Statistiques des forums

Discussions
312 489
Messages
2 088 852
Membres
103 974
dernier inscrit
chmikha