tri de colonne en fonction du nombre d'occurence

lferrie

XLDnaute Nouveau
Bonjour à Tous.

Je recherche de l'aide pour effectuer un tri particulier si possible à l'aide d'une macro.

J'ai une colonne de nom:
Nom
tata
tete
titi
titi
toto
toto
toto
toto
tutu
tutu
tutu

Je souhaiterais obtenir un tri en fonction du nombre d'occurrence de manière à avoir les noms qui reviennent le plus souvent en haut de liste

Résultat à obtenir
toto
toto
toto
toto
tutu
tutu
tutu
titi
titi
tata
tete

Est ce possible ? Merci de votre aide ...
 

RENAUDER

Nous a quitté
Repose en paix
Re : tri de colonne en fonction du nombre d'occurence

Bonjour,
Tu ajoutes une colonne avec une formule NB.SI (pour le nombre de noms) et tu tries en ordre décroissant sur cette colonne et ensuite tu effaces cette colonne.
Tu fais cela facilement avec l'enregistreur de macros
 

mromain

XLDnaute Barbatruc
Re : tri de colonne en fonction du nombre d'occurence

bonjour,

dans la lignée de RENAUDER, voici la macro :
Code:
Sub triColonne(noColonneTri As Integer, premiereLigne As Integer)
With ActiveSheet
    .Columns(noColonneTri + 1).Insert
    For i = premiereLigne To .Cells(.Rows.Count, noColonneTri).End(xlUp).Row
        .Cells(i, noColonneTri + 1).FormulaR1C1 = "=COUNTIF(C[-1],""=""&RC[-1])"
    Next i
    .Range(.Cells(premiereLigne, 1), .Cells(.Rows.Count, 1).End(xlUp)).EntireRow.Sort key1:=.Cells(premiereLigne, noColonneTri + 1), order1:=xlDescending, key2:=.Cells(premiereLigne, noColonneTri), order2:=xlAscending
    .Columns(noColonneTri + 1).Delete
End With
End Sub


Sub test()
triColonne 1, 2
End Sub

a+
 

Niels

XLDnaute Nouveau
Bonjour @mromain , @RENAUDER @Iferrie et à tous,
Désolé de débarquer 10 ans après cette discussion mais cela fait plusieurs mois que je cherche et c'est bien le seul topic que j'ai trouvé collant précisément à mon problème.

Je suis nouveau sur le Forum et n'y connais quasiment rien en VBA, désolé pour les éventuelles maladresses...
Je ne parviens pas à utiliser le code de @mromain car je ne sais pas quels paramètres modifier à l'intérieur.

J'ai créé un tableau avec une liste de salles de spectacles qui programment plusieurs événements musicaux par saison et plusieurs artistes.
J'ai donc des colonnes:
A: salles / B: ville / C: nombre de concerts ds la saison / D: artiste / E: titre du spectacle / F: type (saison ou festival) / G: nbre de concerts (du même artiste dans cette salle) /

Je précise donc qu'une même salle peut se répéter sur plusieurs lignes avec des artistes différents en colonne D

Je peux ainsi filtrer et trier selon de nombreux critères qui ne me demandent pas de connaissances particulières en VBA

MAIS mon problème:
Je souhaite effectuer un tri sur la colonne D en fonction du nombre d'occurrences du même artiste

J'ai beau fouiller le net dans tous les sens je ne parviens pas à trouver la solution, merci si l'un d'entre vous peut m'aider !

A+
 

Discussions similaires

Réponses
2
Affichages
665

Statistiques des forums

Discussions
314 162
Messages
2 106 591
Membres
109 632
dernier inscrit
koetz