Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

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

Caninge

XLDnaute Accro
Oui parfois c'est comme ça. Ce n'est sans doute pas un mystère, il y bien entendu une explication mais elle se trouve où ! je ne connais pas secret des dieux.
Allez on fait comme ça ! A bientôt et merci encore.
CANINGE
 

sylvanu

XLDnaute Barbatruc
Supporter XLD
Bonsoir Laurent,
Ma macro de tri TriAlpha marche bien.
Cependant si je l'inclue dans Worksheet_Change pour faire le tri en automatique : ( PJ post #14 )
VB:
Private Sub Worksheet_Change(ByVal Target As Range)
    Application.EnableEvents = False
    TriAlpha
    Application.EnableEvents = True
End Sub
Alors Caninge a systématiquement une erreur de pile. Et là je suis sec.
 

sylvanu

XLDnaute Barbatruc
Supporter XLD
Votre code marche. Je l'ai testé.
Mais je voulais comprendre pourquoi le mien marche en macro mais pas en Worksheet_Change.
Le mien aussi, j'avis mis les Application.EnableEvents = False dans le mauvais fichier, j'en avais 5 d'ouverts.
@Caninge, essayez celui là.
 

Pièces jointes

  • Trier colonne après le petit trait (1) (4) (1) (1) (9) (3).xlsm
    16.6 KB · Affichages: 12

job75

XLDnaute Barbatruc
Bonjour à tous,
Le mystère restera à jamais.
Dans le fichier du post #14 rien ne neutralise les évènements...

Il y a bouclage sans fin quand cette ligne s'exécute :
VB:
Range("$E$4").Resize(DL - 3, 1) = tablo
Donc écrire :
Code:
Application.EnableEvents = False 'désactive les évènements
Range("E4").Resize(DL - 3) = tablo
Application.EnableEvents = True 'réactive les évènements
A+
 

sylvanu

XLDnaute Barbatruc
Supporter XLD
Bonsoir Job,
Le bon fichier est le dernier, celui du post #21.
et les events sont bloqués au niveau du Worksheet_Change :
VB:
Private Sub Worksheet_Change(ByVal Target As Range)
    Application.EnableEvents = False
    TriAlpha
    Application.EnableEvents = True
End Sub
 

laurent950

XLDnaute Barbatruc
Re @sylvanu
Lorsqu'une cellule est modifié la Target (Range) contient qu'une valeur (La target = 1 Valeur)
Mais lorsque l'on colle le variable tableau (soit plus de 1 valeur)
la Target (Range) contient l'ensemble de la plage.
Soit : un excès de lancement de ces procédures
le lancements des procédures est systématiquement exécuté, à chaque changement de valeur de valeurs de cette plage et pour chaque cellule.

Avec cette condition, une fois le tableau copié on sort de la sub

Essayer votre Poste #14 avec cette instruction
VB:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Count <> 1 Then Exit Sub
    TriAlpha
End Sub
 
Dernière édition:

Caninge

XLDnaute Accro
Bonjour à tous,

J'ai vu que beaucoup se sont attelés à trouver une solution pour résoudre mon problème.
Je pense que j'ai assez de réponses positives et je peux prendre maintenant celle qui me convient.
Je vous remercie bien et je vous dit à bientôt.

CANINGE
 

Caninge

XLDnaute Accro
Bonjour à tous,
je viens d'enlever la feuille de mon classeur.
elle ne fonctionne pas avec le classeur...pourquoi je n'en sais rien.
Pourtant la solution envoyé par sylvanu avec les boutons marchent très bien.
Je ne comprend pas...
Pouvez-vous m'éclairer ?
Merci.
 

Pièces jointes

  • Trier Colonne après le petit trait (5).xlsm
    13.3 KB · Affichages: 4

Hasco

XLDnaute Barbatruc
Repose en paix
Bonjour,

Une proposition par Power Query, inclus dans votre version. C'est une requête toute simple.

Cordialement
 

Pièces jointes

  • Trier colonne après le petit trait (1).xlsx
    23.6 KB · Affichages: 5
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…