resolu voir
http://www.developpez.net/forums/d78...w-medium-high/
Bonjour,
j'aimerais trier des lignes selon un premier critere puis un deuxieme (l'ordre à de l'importance)
A 1
B 5
A 3
B 2
devient
A 1
A 3
B 2
B 5
merci d'avance
resolu voir
http://www.developpez.net/forums/d78...w-medium-high/
Bonjour,
j'aimerais trier des lignes selon un premier critere puis un deuxieme (l'ordre à de l'importance)
A 1
B 5
A 3
B 2
devient
A 1
A 3
B 2
B 5
merci d'avance
Bonjour,
Cette fonctionnalité est disponible dans Excel "normal". Pas besoin de VBA. Et si jamais tu veux le faire par VBA, l'enregistreur de macros est ton ami !
Pour info, tu sélectionnes tes 2 colonnes et tu fais Données/Trier. Tu choisis donc Trier par Colonne A puis par Colonne B par exemple.
Bonne chance.
oui mais j'ai besoin de le faire dans ma macro pour tout automatiser !
je sais qu'on peut le faire sur excel normal...
Que veux-tu que je te dise de plus ? Outils/Macro/Nouvelle macro peut-être...Et si jamais tu veux le faire par VBA, l'enregistreur de macros est ton ami !
EDIT : le tri perso, pourquoi pas ! Mais un tri classique est bien suffisant et plus simple pour ce qu'il y a à faire je trouve
ouskel tu avais mis quoi avec des couleurs ?
j'aimerais faire un tri avec des low medium et high donc ça m'interesse
Utilise le tri personnalisé -> Outils -> Options -> Tri perso.
Là tu crées tes deux listes
Ensuite tu indiques le N° de tri dans ton code
Et comme un petit croquis vaut mieux qu'un long discours...
où (OrderCustom:=)6 correspond au N° de la liste perso
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 Sub Test() Dim Tablo As Variant 'on crée l'ordre de tri personnalisé Application.AddCustomList ListArray:=Array("jaune", "vert", "bleu", "violet", _ "rouge", "orange") 'pour le test je renseigne les cellules A1:A6 ************** Tablo = Array("orange", "rouge", "violet", "bleu", "vert", "jaune") Range("A1:A6") = Application.Transpose(Tablo) '*********** 'On classe les données du tableau selon la liste personnalisée Range("A1:A6").Sort Key1:=Range("A1"), Order1:=xlAscending, Header:=xlNo, _ OrderCustom:=6 End Sub
Bon après-midi
Edit
Voilà ce que j'avais mis mais ça ne répond pas à ta question telle que tu la formules
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager