Liste par rang

Résolu
parifa07 Messages postés 39 Statut Membre -  
parifa07 Messages postés 39 Statut Membre -
Bonjour,

Besoin de votre aide.

En colonne A j'ai des noms et en B des nombre ;

Pierre 1
Jean 2
François 3
Arnaud 0
Ludovic 0
Ect...

J'ai besoin dans la colone C la liste par ordre alphabetique et nombre le plus petit, exemple ;

Arnaud
Ludovic
Pierre
Jean
François

Pouvez vous m'aider SVP?
Cdt

2 réponses

  1. via55 Messages postés 14393 Date d'inscription   Statut Membre Dernière intervention   2 759
     
    Bonsoir

    Avec une macro :
    Sub tri_numalpha()
    Dim a()
    Dim b()
    pl = 3 'n° de la 1ere ligne du tableau A MODIFIER SI NECESSAIRE
    nb = Application.WorksheetFunction.CountA(Range("A:A"))
    ReDim a(nb)
    ReDim b(nb)
    '---- relève données
    For i = 1 To nb
    a(i) = Range("B" & i + pl - 1)
    b(i) = Range("A" & i + pl - 1)
    Next i
    '---- tri
    For i = 1 To nb
    For j = i To nb
    If a(j) < a(i) Or (a(i) = a(j) And b(i) > b(j)) Then
    temp = a(j)
    temp2 = b(j)
    a(j) = a(i)
    a(i) = temp
    b(j) = b(i)
    b(i) = temp2
    End If
    Next j
    Next i
    '--- affichage
    For i = 1 To nb
    Range("C" & i + pl - 2) = b(i)
    Next
    End Sub


    Cdlmnt
    Via

    0
    1. parifa07 Messages postés 39 Statut Membre
       
      Merci via,
      Auriez vous une solution par formule plutot qu'utiliser la macro?
      0
      1. via55 Messages postés 14393 Date d'inscription   Statut Membre Dernière intervention   2 759 > parifa07 Messages postés 39 Statut Membre
         
        Bonjour parifa

        Salutations Raymond ☺

        Par formules non car il faut faire 2 tris, la solution la plus simple est celle de Raymond mais j'avais bien compris que tu ne voulais pas trier sur place

        Pour la macro c'est simple tu n'as qu'à la copier, tu ouvres l'éditeur VBA avec Alt+F11
        Tu fais Insertion - Module et tu colles la macro dans la page blanche, tu corriges éventuellement la 3eme ligne pour la ligne de départ et tu fermes 'éditeur

        Ensuite il suffit à partir de ta feuille dans le ruban d'aller dans Developpeur - Macros, de choisir la macro et de la faire executer (tu peux même dans Macros - Options chosir un raccourci clavier pour la macro pour la lancer ensuite directement)

        Cdlmnt
        Via
        0
      2. parifa07 Messages postés 39 Statut Membre > via55 Messages postés 14393 Date d'inscription   Statut Membre Dernière intervention  
         
        Mille merci à vous deux. Je vais tester....
        Très bon weekend à vous.
        Cdt
        0
  2. Raymond PENTIER Messages postés 58222 Date d'inscription   Statut Contributeur Dernière intervention   17 487
     
    Bonsoir parifa.


    Drôle de question !
    Il suffit de copier-coller A en C, et de lancer un tri personnalisé par rapport à la colonne B, puis par rapport à la colonne A ...
    ou alors je n'ai pas compris ce que tu veux faire, et qui justifie de passer par une macro !

    Salutations à Via.
    0
    1. parifa07 Messages postés 39 Statut Membre
       
      Bjr Raymond,
      J'ai besoin d'automatisé cette tache mais je ne maitrise pas les macro
      0