Tri alphabétique vba
Résolu
raoulmenard
Messages postés
23
Date d'inscription
Statut
Membre
Dernière intervention
-
raoulmenard Messages postés 23 Date d'inscription Statut Membre Dernière intervention -
raoulmenard Messages postés 23 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
j'ai créé un tableau excel a deux feuil.sur la feuil1 j'ai créé un formulaire de saisi classique qui ajoute les données sur la feuil2 en A1 et B1 .la colonne a répertorie une ville et la B un parcours.par exemple en A1 "paris" et en B1 "bords de la seine". Les données saisie dans le formulaire Userform s'ajoute en dessous a chaque saisie.je souhaiterai que les données saisies se mettent dans l'ordre alphabétique automatiquement.J'ai fait divers recherches dans les forum mais je n'ai pas réussi a mettre en application ce que j'ai trouvé.Le souci viens en fait de la sélection qui varie a chaque donnée ajoutée.Si quelqu'un peut m'aider ce serait sympa merci d'avance.
j'ai créé un tableau excel a deux feuil.sur la feuil1 j'ai créé un formulaire de saisi classique qui ajoute les données sur la feuil2 en A1 et B1 .la colonne a répertorie une ville et la B un parcours.par exemple en A1 "paris" et en B1 "bords de la seine". Les données saisie dans le formulaire Userform s'ajoute en dessous a chaque saisie.je souhaiterai que les données saisies se mettent dans l'ordre alphabétique automatiquement.J'ai fait divers recherches dans les forum mais je n'ai pas réussi a mettre en application ce que j'ai trouvé.Le souci viens en fait de la sélection qui varie a chaque donnée ajoutée.Si quelqu'un peut m'aider ce serait sympa merci d'avance.
4 réponses
Mon erreur
Selection.Sort Key1:=Range("A2"), Order1:=xlAscending, Header:=xlNo, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
Selection.Sort Key1:=Range("A2"), Order1:=xlAscending, Header:=xlNo, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
Il faudrait ajouter un tri sur le bouton du userform pour trier a chaque ajout.
Si tu a une entête, tu peux trouver la dernière ligne x ayant des données et trier
(Dans cet exemple, ton tableau commence à la 3ieme ligne)
Dim X as integer
X = Cells(3, 1).End(xlDown).Row
Range("A3:B" & X).Select
Selection.Sort Key1:=Range("A"), Order1:=xlAscending, Header:=xlNo, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
Modifie le 3 partout pour la ligne ou commence ton tableau
Si tu a une entête, tu peux trouver la dernière ligne x ayant des données et trier
(Dans cet exemple, ton tableau commence à la 3ieme ligne)
Dim X as integer
X = Cells(3, 1).End(xlDown).Row
Range("A3:B" & X).Select
Selection.Sort Key1:=Range("A"), Order1:=xlAscending, Header:=xlNo, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
Modifie le 3 partout pour la ligne ou commence ton tableau