Trier sous excel

Résolu/Fermé
lamusaraigne Messages postés 14 Date d'inscription mercredi 6 février 2008 Statut Membre Dernière intervention 15 novembre 2013 - 25 juin 2008 à 17:09
lamusaraigne Messages postés 14 Date d'inscription mercredi 6 février 2008 Statut Membre Dernière intervention 15 novembre 2013 - 25 juin 2008 à 19:55
Bonjour,
Je souhaiterais faire un tri de nombres par ordre croissant sous excel. Mais ligne par ligne.
Par exemple si j'ai deux lignes L1: 3 5 2 1 9 8
et L2: 12 8 3 4 6 2
Je voudrais obtenir L1: 1 2 3 5 8 9
et L2: 2 3 4 6 8 12
J'ai bien trouvé comment trier en faisant ligne par ligne,mais vu que mon tableau comporte 36000 j'aimerais trouver quelque chose de plus rapide.
Par contre j'ai regarder les réponses y'a souvent de la programmation,ça ne me fait pas peur parce que les langages se ressemblent un peu toujours, mais sous excel je ne sais absolument pas ce qu'il faut faire, ni comment ça marche.
Merci d avance pour les réponses
A voir également:

7 réponses

lermite222 Messages postés 8702 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 1 190
25 juin 2008 à 17:22
Bonjour,
une piste..
Dim i as long, e as long, B as Boolean
Dim Swap as variant
For i = 1 To DernièreLigneAtester
Reco:
for e = 1 to derniereColonneAtester-1
if cells(i,e) > cells(i,e+1) then
Swap=cells( i, e) : cells( i, e) = cells( i, e + 1) : cells( i, e + 1) = Swap
B = True
end if
next e
if B then B=False : goto Reco
Next i
Essaye ca (pas tester) mais le principe est bon..
A+
0
lamusaraigne Messages postés 14 Date d'inscription mercredi 6 février 2008 Statut Membre Dernière intervention 15 novembre 2013
25 juin 2008 à 17:33
Merci pour l'info, mais juste le détail pratique qui tue: Tu le tapes ou ce programme??????
0
lermite222 Messages postés 8702 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 1 190
25 juin 2008 à 17:50
Wooouuuuah, je ,pensais pas que tu débutait en VBA
Donc je reprend
Dans Excel tu tape Alt+F11
sur la gauche de l'IDE (éditeur de code ou de macro) tu a l'explorateur de projet.
>> Insertion >> Module
dans la feuille qui vient de s'ouvrir tu fais copier/Coller du code ci-dessous

Sub Trie()
Dim i As Long, e As Long, B As Boolean
Dim Swap As Variant
    For i = 1 To 5 'Mettre le nombre de ligne à tester
Reco:
        For e = 1 To 4 - 1 'mettre le nombre de colonnes à tester
            If Cells(i, e) > Cells(i, e + 1) Then
            Swap = Cells(i, e): Cells(i, e) = Cells(i, e + 1): Cells(i, e + 1) = Swap
            B = True
            End If
        Next e
        If B Then B = False: GoTo Reco
    Next i
End Sub


Pour le test j'ai mis des nombres dans le désordre dans les cellules de A1 à D5
et voila le résultat.

1	2	6	7
4	8	12	23
4	5	6	8
1	2	5	8
4	9	12	45

Bon, pour activer, tu met des séries dans le désordre comme tu veux dans ces cellules...
Tu retourne dans 'IDE
Tu met le curseur au milieu de la sub et tu tape F5
J'espère avoir été asser explicit !
A+
0
lamusaraigne Messages postés 14 Date d'inscription mercredi 6 février 2008 Statut Membre Dernière intervention 15 novembre 2013
25 juin 2008 à 18:52
rebonjour, j'espère qu'il y a encore du monde....
bon je suis vraiment pour le VBA effectivement je connais la programmation mais j'ai jamais travailler avec ça.
Donc j'ai bien réussi a rentrer le module (tu as té parfaitement explicite!!) mais pour l'appliquer je fais quoi, j'ai essayé de sélectionner des lignes a trier et pis je suis retournée dans le alt F11, j'ai cliqué sur module 1 et quand je fais F5 il m'ouvre une fenêtre je mets exécuter,mais y s'est rien passé dans mon tableau.....Donc en fait j'ai pas exactement compris les deux dernières lignes d'explications.
Mais merci tout plein
A+
0
lamusaraigne Messages postés 14 Date d'inscription mercredi 6 février 2008 Statut Membre Dernière intervention 15 novembre 2013
25 juin 2008 à 19:07
ah désole en fait le programme il fait bien quelque chose mais pas vraiment ce que je veux:
je lu rentre et je sélectionne les deux lignes
1 3 6 12 13 15 17 2
10 13 15 11 19 12 9 14
et il me rend
6 1 3 15 12 13 17 2
15 10 13 11 19 12 9 14
OUPS!
ET pis il a pas l'air de marcher a chaque fois.....
j'ai bien modifier nombres de ligne et colonnes dans le programme
Merci merci
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
lermite222 Messages postés 8702 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 1 190
25 juin 2008 à 19:31
En fait le programme y fait exactement ce que tu veux, je sais pas ce que tu à fait...
Pour exemple charge le fichier sur Ce fichier
Pour le charger tu le SauveSous sur ton DD
Tu clic sur le bouton et...
A+
0
lamusaraigne Messages postés 14 Date d'inscription mercredi 6 février 2008 Statut Membre Dernière intervention 15 novembre 2013
25 juin 2008 à 19:54
super!!!!!!!
mille merci pour le lien et pour ton boulot.
Bonne soiree
0
lamusaraigne Messages postés 14 Date d'inscription mercredi 6 février 2008 Statut Membre Dernière intervention 15 novembre 2013
25 juin 2008 à 19:55
probleme resolu
0