XL 2019 Trier les mots d'une colonne après le petit trait.

Caninge

XLDnaute Accro
Bonjour à tous amis excelliens et excelliens,

j'arrive à trier facilement les codes postaux avec les communes (colonne E) mais comment faire
pour trier les communes dans l'ordre alphabétique (Colonne G) en oubliant les codes postaux.
Comme dans l'exemple que j'envoie en pièce jointe.
Est-ce possible que quand je rajoute un mot à la fin de la liste, cette dernière se trie immédiatement !
J'ai cherché mais rien trouvé de probant.
Pouvez m'aider. Merci !
CANINGE
 

Pièces jointes

  • Trier colonne après le petit trait.xlsx
    9.3 KB · Affichages: 47

mapomme

XLDnaute Barbatruc
Supporter XLD
Bonsoir à tous,

Pour le fun, une méthode assez rapide qui allie les array et les tri via Excel.
Le code est dans le module de la feuille 1. Il se déclenche quand on modifie une cellule ou des cellules dans la colonne E à partir de la ligne 4.

nota : la v2 en profite pour ajouter un 0 devant les codes postaux à 4 chiffres au lieu des 5 chiffres attendus.

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim derlig&, t, i&, ech As Boolean, aux, deb

   deb = Timer
   If Intersect(Target, Range("e4:e" & Rows.Count)) Is Nothing Then Exit Sub
   On Error GoTo FIN: Application.EnableEvents = False
   If Me.FilterMode Then Me.ShowAllData
   derlig = Cells(Rows.Count, 5).End(xlUp).Row
   t = Range(Cells(4, 5), Cells(derlig, 5)).Value
   For i = 1 To UBound(t): t(i, 1) = Mid(t(i, 1), InStr(t(i, 1), "-") + 1) & "\" & IIf(Not Mid(t(i, 1), 5, 1) Like "#", "0", "") & t(i, 1): Next
   Range(Cells(4, 5), Cells(derlig, 5)) = t
   Range(Cells(4, 5), Cells(derlig, 5)).Sort Cells(4, 5), xlAscending, MatchCase:=False, Header:=xlNo
   t = Range(Cells(4, 5), Cells(derlig, 5)).Value
   For i = 1 To UBound(t): t(i, 1) = Mid(t(i, 1), InStr(t(i, 1), "\") + 1, 999): Next
   Range(Cells(4, 5), Cells(derlig, 5)) = t
FIN:
   Application.EnableEvents = True
   MsgBox Format(Timer - deb, "0.000\ sec.")
End Sub
 

Pièces jointes

  • Caninge- Trier par commune- v2.xlsm
    199.2 KB · Affichages: 5
Dernière édition:

Caninge

XLDnaute Accro
Bonsoir à tous,
bonsoir mapomme
J'ai téléchargé le fichier. Apparemment c'est bien et cela fonctionne.
C'est rigolo le temps qui s'affiche à la fin. Moi qui pensais que mon ordinateur n'était pas rapide.
J'ai rajouté deux autres colonnes dans le fichier. Est-ce possible de trier ces deux dernières de la même
façon. Je me doute que oui. J'ai essayé en faisant un copier-coller et en modifiant les lignes. Bien entendu je me suis planté. Pouvez-vous m'aider s'il vous plait ?
Merci
 

Pièces jointes

  • Trier colonne après le petit trait 7.xlsm
    18.4 KB · Affichages: 3

Caninge

XLDnaute Accro
Bonsoir à tous,
J'ai retrouvé un code utilisé dans un autre fichier pour trier les colonnes G et I.
automatiquement après avoir écrit un nom à la dernière ligne.
Mais comme il y l'autre code qui trie la colonne E, cela provoque un Bug.
J'y suis presque arrivé...
un petit rien sans doute.
Merci de me dépanner..
 

Pièces jointes

  • Trier colonne après le petit trait 8.xlsm
    37.2 KB · Affichages: 1