Liste par rang

Résolu
parifa07 Messages postés 38 Date d'inscription   Statut Membre Dernière intervention   -  
parifa07 Messages postés 38 Date d'inscription   Statut Membre Dernière intervention   -
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

via55 Messages postés 14512 Date d'inscription   Statut Membre Dernière intervention   2 746
 
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
parifa07 Messages postés 38 Date d'inscription   Statut Membre Dernière intervention  
 
Merci via,
Auriez vous une solution par formule plutot qu'utiliser la macro?
0
via55 Messages postés 14512 Date d'inscription   Statut Membre Dernière intervention   2 746 > parifa07 Messages postés 38 Date d'inscription   Statut Membre Dernière intervention  
 
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
parifa07 Messages postés 38 Date d'inscription   Statut Membre Dernière intervention   > via55 Messages postés 14512 Date d'inscription   Statut Membre Dernière intervention  
 
Mille merci à vous deux. Je vais tester....
Très bon weekend à vous.
Cdt
0
Raymond PENTIER Messages postés 58990 Date d'inscription   Statut Contributeur Dernière intervention   17 354
 
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
parifa07 Messages postés 38 Date d'inscription   Statut Membre Dernière intervention  
 
Bjr Raymond,
J'ai besoin d'automatisé cette tache mais je ne maitrise pas les macro
0