Trier par ordre croissant des numeros
Résolu
P.O.
-
P.O. -
P.O. -
Bonjour,
je vous écris pour obtenir de l'aide sur excel 2003.
Voila je dois classer par ordre croissant dans un tableau des numeros du type lettres-chiffres-chiffres-chiffres
sachant que les lettres soit c 'est F soit c'est EU
merci de bien vouloir m'aider par avance.
Cordialment Pierre-olivier
je vous écris pour obtenir de l'aide sur excel 2003.
Voila je dois classer par ordre croissant dans un tableau des numeros du type lettres-chiffres-chiffres-chiffres
sachant que les lettres soit c 'est F soit c'est EU
merci de bien vouloir m'aider par avance.
Cordialment Pierre-olivier
A voir également:
- Trier par ordre croissant des numeros
- Excel trier par ordre croissant chiffre - Guide
- Le fichier contient une liste de prénoms. triez ce tableau par ordre alphabétique des prénoms. quel mot est formé par les 6 premières lettres de la colonne code ? ✓ - Forum Bureautique
- Triez ce tableau par ordre alphabétique des prénoms. - Forum Excel
- Triez ce tableau par ordre alphabétique des prénoms ✓ - Forum Excel
- Vba trier colonne par ordre croissant - Forum Bureautique
16 réponses
il faut trier d'abord par le premier chiffre ensuite par le deuxieme et enfin par le dernier
merci encore
merci encore
Une solution..
'supposons les données dans colonne A
'et les résultats intermédiaire dans les colonnes suivantes
''supposons les données dans colonne A
'F-1998-124-045 ou EU-2005-256-125 ou F-1995-156
Peut éventuellement ajouter une commande pour effacer les colonne C,D,E
A+
'supposons les données dans colonne A
'et les résultats intermédiaire dans les colonnes suivantes
''supposons les données dans colonne A
'F-1998-124-045 ou EU-2005-256-125 ou F-1995-156
Sub Trie3()
Dim i As Long, e As Long, y As Integer
Dim T
Sheets("Feuil1").Select
'Sépare d'abord tout..
e = Range("A1").SpecialCells(xlCellTypeLastCell).Row
For i = 1 To e
T = Split(Cells(i, 1), "-", -1)
For y = 0 To UBound(T)
Cells(i, y + 2) = T(y)
Next y
Next i
'trie la colonne des date.. suite... Suite
Range("A1:E" & e).Select
Selection.Sort Key1:=Range("C1"), Order1:=xlAscending, Key2:=Range("D1") _
, Order2:=xlAscending, Key3:=Range("E1"), Order3:=xlAscending, Header:= _
xlNo, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
End Sub
Peut éventuellement ajouter une commande pour effacer les colonne C,D,E
A+
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjour
Essayez de créer une colonne de renvoi pour le tri qui supprime les lettres du début, soit la formule, si votre code est en A1:
=STXT(A1;3;12) ....ou + de 12 si vous riqsuez d'avoir plus de 12 caractére derrière le code lettre.
Cette formule vous renvoi les codes nombres et devrait permettre ce que vous souhaitez, soit un tri croissant dans l'ordre des chiffres, groupe après groupe
CRDLMNT
Essayez de créer une colonne de renvoi pour le tri qui supprime les lettres du début, soit la formule, si votre code est en A1:
=STXT(A1;3;12) ....ou + de 12 si vous riqsuez d'avoir plus de 12 caractére derrière le code lettre.
Cette formule vous renvoi les codes nombres et devrait permettre ce que vous souhaitez, soit un tri croissant dans l'ordre des chiffres, groupe après groupe
CRDLMNT
lermite222 merci beaucoup j'ai essayé ton programme sous VB ça marche super bien le seul probleme c'est que j'ai des informations dans les autres colonnes qui correspondend au numero malheureusement elle ne suive pas le numero
En tout cas merci beaucoup pour vos réponse sa m'aide beaucoup
En tout cas merci beaucoup pour vos réponse sa m'aide beaucoup
En faite j'ai un tableau avec les numeros en colonne A et ensuite j'ai des informations qui correspondent à ces numero sur les colonnes qui suivent. comment dire ça chaque ligne correspond à un numero et ces informations.
Et aussi comment tu fais pour cacher les colonnes intermédiaire qui se creer avec l'application du programme VB que tu m'a fournie.
Merci encore beaucoup de ton aide
Et aussi comment tu fais pour cacher les colonnes intermédiaire qui se creer avec l'application du programme VB que tu m'a fournie.
Merci encore beaucoup de ton aide
La voila rectifiée, elle déplace toute la ligne.
En principe ce devrait être bon.
A+
'supposons les données dans colonne A
'et les résultats intermédiaire dans les colonnes suivantes
''supposons les données dans colonne A
'F-1998-124-045 ou EU-2005-256-125 ou F-1995-156
Sub Trie3()
Dim i As Long, e As Long, y As Integer
Dim T
Sheets("Feuil1").Select
'Sépare d'abord tout..
e = Range("A1").SpecialCells(xlCellTypeLastCell).Row
For i = 1 To e
T = Split(Cells(i, 1), "-", -1)
For y = 0 To UBound(T)
Cells(i, y + 250) = T(y)
Next y
Next i
'trie la colonne des date.. suite... Suite
Range("A1:IS" & e).Select
Selection.Sort Key1:=Range("IQ1"), Order1:=xlAscending, Key2:=Range("IR1") _
, Order2:=xlAscending, Key3:=Range("IS1"), Order3:=xlAscending, Header:= _
xlNo, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
'Efface les données intermédiaires
Range("IP1:IS" & e).Select
Selection.ClearContents
Range("A1").Select
End Sub
En principe ce devrait être bon.
A+
salut,
DSl de repondre que maintenant j'ai essayé le dernier programme que tu m'as envoyé et malheureusement il m'indique erreur 1004 lorsque je le lance.
ma derniére colonne est la colonne H et je commence à partir de la ligne 13
merci
DSl de repondre que maintenant j'ai essayé le dernier programme que tu m'as envoyé et malheureusement il m'indique erreur 1004 lorsque je le lance.
ma derniére colonne est la colonne H et je commence à partir de la ligne 13
merci
j'ai que 2 boutons qui apparaissent oui ou aide et dans aide rien de trés compréhensible pour moi DSL je suis nul en informatique le truc c'est que l'ancien fichier marche super bien sauf qu'il considére pas le reste de mes colonnes. Erreur indique que ça peut venir aussi bien du programme que de mon tableur est ce que tu penses que ça peut venir du fait que j'ai des cases fusionnées???
le probleme venait bien des cellules fusionnées c'est bon ça marche maintenant merci beaucoup pour ton aide précieuse tu m'as évité de tout trier à la main ce qui m'aurait pris des heures
merci beaucoup encore une fois bonne fin de journée
merci beaucoup encore une fois bonne fin de journée
SALUT escuse moi de te déranger encore une fois mais je suis une vrai bréle je n'arrive pas à faire fonctionner le programme dans le cas ou les numeros sont à la colonne E et commence à partir de la ligne 13 et qu'il ne commence pas par une lettre mais directement par un chiffre ex: 2008-254-569, 96-257-596, 99-548-623
Sub Trie3()
Dim i As Long, e As Long, y As Integer
Dim T
Sheets("Feuil1").Select
'Sépare d'abord tout..
'Trouve la dernière cellule de la colonne A1, si Autre cellule changer par exemple Par E1
e = Range("A1").SpecialCells(xlCellTypeLastCell).Row
'Commence à la ligne 1 jusque la dernière cellule si ligne 13 remplacer 1 par 13
'(Cells(i, 1) >> i c'est la ligne et 1 c'est la colonne, si colonne E remplacer 1 par 5
For i = 1 To e
'Split tu sélectionne le mot et tu tape F1, ce serra plus explicite que ce que je pourrais te dire en quelques lignes.
'Mais en gros, T devient un tableau avec chaque donnée séparée, T(0)=F T(1).. La suite
T = Split(Cells(i, 1), "-", -1)
For y = 0 To UBound(T)
Cells(i, y + 250) = T(y)
Next y
Next i
'trie la colonne des data.. suite... Suite
Range("A1:IS" & e).Select 'ICI rien changer, c'est bon
'Trie avec les critères de la colonne IQ1, ensuite IR1, ensuite IS1
'si tu n'a plus de lettre F ou EU devant if faut tout reculer d'une colonne, soit IP1, IQ1, IR1
Selection.Sort Key1:=Range("IQ1"), Order1:=xlAscending, Key2:=Range("IR1") _
, Order2:=xlAscending, Key3:=Range("IS1"), Order3:=xlAscending, Header:= _
xlNo, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
'Efface les données intermédiaires
Range("IP1:IS" & e).Select
Selection.ClearContents
Range("A1").Select
End Sub
Poure savoir comment ca fonctionne, mettre le curseur dans la macro et taper F8, ensuite, chaque fois que tu tape F8 l'instruction suivante est calculée, pour connaitre la valeur qu'il y a dans une variable tu promène ta souris dessus tu arras une bulle avec ce qui est dedans.
A+
merci pour ton aide