OVH Cloud OVH Cloud

Difficulté de tri

4 réponses
Avatar
G Chartrand
Bonjour,

Je dois faire le tri d'une colonne de chiffres. Mon problème est que les
séries de 4 à 5 chiffres par cellule sont séparé par un (-) (exemple:
2-1-1-1; 2-1-10-11; etc). Lorsque j'effectue un tri par ordre croissant, la
donnée (2-1-10-11) va avoir préséance sur la donnée (2-1-1-1). Moi, c'est
le contraire que je veux. En d'autres mots, je cherche un moyen de faire le
tri pour que la série numérique se suive dans un ordre logique

Exemple:
avant le tri après le tri

2-1-10-15 2-1-1-1
2-1-10-16 2-1-1-10
2-1-10-1 2-1-1-11
2-1-10-6 2-1-10-1
2-1-10-7 2-1-10-6
2-1-10-8 2-1-10-7
2-1-10-9 2-1-10-8
2-1-1-1 2-1-10-9
2-1-1-10 2-1-10-15
2-1-1-11 2-1-10-16
2-1-11-1 2-1-11-1
2-1-11-10 2-1-11-2
2-1-11-11 2-1-11-10
2-1-11-12 2-1-11-11
2-1-11-2 2-1-11-12

4 réponses

Avatar
JLuc
*Bonjour G Chartrand*,

Je pense qu'il faudrait passer une macro qui te modifie toutes tes
valeurs pour les mettres sur le meme format

Bonjour,

Je dois faire le tri d'une colonne de chiffres. Mon problème est que les
séries de 4 à 5 chiffres par cellule sont séparé par un (-) (exemple:
2-1-1-1; 2-1-10-11; etc). Lorsque j'effectue un tri par ordre croissant, la
donnée (2-1-10-11) va avoir préséance sur la donnée (2-1-1-1). Moi, c'est le
contraire que je veux. En d'autres mots, je cherche un moyen de faire le tri
pour que la série numérique se suive dans un ordre logique

Exemple:
avant le tri après le tri

2-1-10-15 2-1-1-1
2-1-10-16 2-1-1-10
2-1-10-1 2-1-1-11
2-1-10-6 2-1-10-1
2-1-10-7 2-1-10-6
2-1-10-8 2-1-10-7
2-1-10-9 2-1-10-8
2-1-1-1 2-1-10-9
2-1-1-10 2-1-10-15
2-1-1-11 2-1-10-16
2-1-11-1 2-1-11-1
2-1-11-10 2-1-11-2
2-1-11-11 2-1-11-10
2-1-11-12 2-1-11-11
2-1-11-2 2-1-11-12



--
JLuc

Pensez a regarder ces sites très bien fait, ce sont des mines de trucs
et astuces !
http://www.excelabo.net
http://jacxl.free.fr/
http://dj.joss.free.fr/
C:Program FilesMicrosoft OfficeOffice1036VBALIST.XLS

Avatar
michdenis
Bonjour Chartrand,

a )
Copie ta colonne que tu dois trier juste dans la colonne de droite (insére une colonne au besoin pour le temps que va durer la
manipulation.

B) à l'aide de la commande Remplacer du menu édition, remplace "-" par rien seulement dans la colonne A:A. Pour ce faire, tu n'ais
qu'à sélectionner la colonne avant d'appeler la commande

C ) Maintenant effectue un tri sur la colonne A:A en prenant soin de sélectionner les 2 colonnes.

D ) Supprime la colonne A:A

Voilà !


Salutations!


"G Chartrand" a écrit dans le message de news: dkdphh$3ni$
Bonjour,

Je dois faire le tri d'une colonne de chiffres. Mon problème est que les
séries de 4 à 5 chiffres par cellule sont séparé par un (-) (exemple:
2-1-1-1; 2-1-10-11; etc). Lorsque j'effectue un tri par ordre croissant, la
donnée (2-1-10-11) va avoir préséance sur la donnée (2-1-1-1). Moi, c'est
le contraire que je veux. En d'autres mots, je cherche un moyen de faire le
tri pour que la série numérique se suive dans un ordre logique

Exemple:
avant le tri après le tri

2-1-10-15 2-1-1-1
2-1-10-16 2-1-1-10
2-1-10-1 2-1-1-11
2-1-10-6 2-1-10-1
2-1-10-7 2-1-10-6
2-1-10-8 2-1-10-7
2-1-10-9 2-1-10-8
2-1-1-1 2-1-10-9
2-1-1-10 2-1-10-15
2-1-1-11 2-1-10-16
2-1-11-1 2-1-11-1
2-1-11-10 2-1-11-2
2-1-11-11 2-1-11-10
2-1-11-12 2-1-11-11
2-1-11-2 2-1-11-12
Avatar
LSteph
Bonsoir,
C'est normal!
Si l'on choisit une structure qui ne peut être interprètée que comme du
texte
elle sera donc triée dans l'ordre de gauche à droite
Autre exemple s'il n'y avait que du numérique converti en texte
10
2
21
220
23
3
alors que celui ci naturellement interprèté en numérique donnerait
2
3
10
21
23
220

lSteph

"G Chartrand" a écrit dans le message de news:
dkdphh$3ni$
Bonjour,

Je dois faire le tri d'une colonne de chiffres. Mon problème est que les
séries de 4 à 5 chiffres par cellule sont séparé par un (-) (exemple:
2-1-1-1; 2-1-10-11; etc). Lorsque j'effectue un tri par ordre croissant,
la donnée (2-1-10-11) va avoir préséance sur la donnée (2-1-1-1). Moi,
c'est le contraire que je veux. En d'autres mots, je cherche un moyen de
faire le tri pour que la série numérique se suive dans un ordre logique

Exemple:
avant le tri après le tri

2-1-10-15 2-1-1-1
2-1-10-16 2-1-1-10
2-1-10-1 2-1-1-11
2-1-10-6 2-1-10-1
2-1-10-7 2-1-10-6
2-1-10-8 2-1-10-7
2-1-10-9 2-1-10-8
2-1-1-1 2-1-10-9
2-1-1-10 2-1-10-15
2-1-1-11 2-1-10-16
2-1-11-1 2-1-11-1
2-1-11-10 2-1-11-2
2-1-11-11 2-1-11-10
2-1-11-12 2-1-11-11
2-1-11-2 2-1-11-12




Avatar
jb
La fonction ajoute les zéros manquants:

http://cjoint.com/?leiqbgBDaj

2-01-01-01
2-01-01-10
2-01-01-11
2-01-10-01
2-01-10-06
2-01-10-07
2-01-10-08
2-01-10-09
2-01-10-15
2-01-10-16
2-01-11-01
2-01-11-02
2-01-11-10
2-01-11-11
2-01-11-12


Dans le tableur =conv(A1) puis recopie puis copier/collage
spécial/valeurs

Function conv(chaine)
temp = chaine
d = 1
P1 = InStr(d, temp, "-")
Do While P1 > 0
p2 = InStr(P1 + 1, temp, "-")
If p2 - P1 = 2 Then
temp = Left(temp, P1) & "0" & Mid(temp, P1 + 1)
P1 = p2 + 1
Else
If p2 > 0 Then
P1 = p2 + 0
End If
End If
If p2 = 0 And P1 = Len(temp) - 1 Then
temp = Left(temp, P1) & "0" & Mid(temp, P1 + 1)
Exit Do
End If
If p2 = 0 Then Exit Do
Loop
conv = temp
End Function

JB