[VBA] Trier un tableau excel avec vba
tzehani
Messages postés
11
Statut
Membre
-
titounette -
titounette -
Bonjour à tous j'aimerai automatiser le tri par un code VBA et pas le faire manuellement
exemple : j'ai un tableau excel avec 3 colonnes et j'aimerai trier le tableau selon la colonne B tout en gardant les lignes
c'est à direpar exemple
rouge tomate légume
vert raisin fruit
noir araignée animal
devienne
noir araignée animal
vert raisin fruit
rouge tomate légume
Merci beaucoup de votres précieuses aides
exemple : j'ai un tableau excel avec 3 colonnes et j'aimerai trier le tableau selon la colonne B tout en gardant les lignes
c'est à direpar exemple
rouge tomate légume
vert raisin fruit
noir araignée animal
devienne
noir araignée animal
vert raisin fruit
rouge tomate légume
Merci beaucoup de votres précieuses aides
Configuration: Windows XP Internet Explorer 6.0
2 réponses
-
Bonjour tzehani,
Voici une macro toute simple, à lancer après avoir sélectionné la zone à trier :
Sub TriPerso() Selection.Sort Key1:=Range("B1"), Order1:=xlAscending, Header:=xlGuess, _ OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _ DataOption1:=xlSortNormal End Sub
ou la même qui sélectionne une zone fixe :
Sub TriPerso() Range("A1:C3").Select Selection.Sort Key1:=Range("B1"), Order1:=xlAscending, Header:=xlGuess, _ OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _ DataOption1:=xlSortNormal End Sub
Astuce : il est très facile d'obtenir des actions aussi simples en lançant l'enregistreur de macros.
Cordialement.-
Merci beaucoup pour le conseil, je prendrai ta deuxieme proposition cepeandant j'an ai besoin de A1:ANi et c'est cette écriture que je n'arrive pas à coder, voici mon code :
Sub TriPerso()
Do While Range("A" & i) <> 0
i = i + 1
Loop
Range("A1:AN & i").Select =====> Problème pour l'expression AN&i
Selection.Sort Key1:=Range("E1"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal
End Sub
Merci encore de ton attention
-