Trier sous excel

Résolu
lamusaraigne Messages postés 15 Statut Membre -  
lamusaraigne Messages postés 15 Statut Membre -
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
Configuration: Windows XP
Firefox 2.0.0.14

7 réponses

  1. lermite222 Messages postés 9042 Statut Contributeur 1 199
     
    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
    1. lamusaraigne Messages postés 15 Statut Membre
       
      Merci pour l'info, mais juste le détail pratique qui tue: Tu le tapes ou ce programme??????
      0
  2. lermite222 Messages postés 9042 Statut Contributeur 1 199
     
    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
  3. lamusaraigne Messages postés 15 Statut Membre
     
    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
  4. lamusaraigne Messages postés 15 Statut Membre
     
    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
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. lermite222 Messages postés 9042 Statut Contributeur 1 199
     
    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
  7. lamusaraigne Messages postés 15 Statut Membre
     
    super!!!!!!!
    mille merci pour le lien et pour ton boulot.
    Bonne soiree
    0
  8. lamusaraigne Messages postés 15 Statut Membre
     
    probleme resolu
    0