Fonction pour comparer des chiffres ?

Fonction pour comparer des chiffres ? - VB/VBA/VBS - Programmation

Marsh Posté le 15-12-2005 à 14:55:16    

Bonjour,
Je cherche a comparer K2 avec K10.
Le probleme est que en language informatique, K10 est inferieur à K2.
Y a t il une fonction pour avoir K2<K10 ?
Merci

Reply

Marsh Posté le 15-12-2005 à 14:55:16   

Reply

Marsh Posté le 15-12-2005 à 16:20:19    

comparer quels parametres ?

Reply

Marsh Posté le 15-12-2005 à 16:33:35    

Pour tout expliquer, je fais un tri a bulle dans un tableau "Dim toto()".
Le probleme est que je me retrouve avec dans l'ordre croissant :
K1 ; K10 ; K11 ; K2 ; K3 ; K40 ; K41 ; K4 .....
Au lieu de :
K1 ; K2 ; K3 ; K4 ; K10 ; K11 ; K40 ; K41.

Reply

Marsh Posté le 15-12-2005 à 17:25:24    

ben utilise la fonction val()


---------------
Ce qui est affirmé sans preuve peut être nié sans preuve.
Reply

Marsh Posté le 15-12-2005 à 17:31:28    

Soit tu numérotes K01, K02, ..., K10...
Soit tu fais un traitement quelque part où tu évalues le numéro associé à K pour effectuer ton tri : K3 < K11 -> K & 3 < K & 11 -> val(3) < val(11)

Reply

Marsh Posté le 15-12-2005 à 17:45:54    

fred20000 y'a pas de natural sort en VBA.
 
tu peux t'amuser à coder la fonction, tu vas voir, c'est rigolo comme tout (et ça va t'occuper un moment :D)

Reply

Marsh Posté le 16-12-2005 à 08:34:52    

Le probleme c'est que j'ai des K10 , QQ20 , MMF22 ....
Ca reste compliqué et long à traiter votre truc pour savoir quand commence les chiffres.

Reply

Marsh Posté le 16-12-2005 à 09:38:27    

Justement, ça s'appelle le "natural sort" (tu devrais trouver des algo sur le net)
 
Le principe n'est pas très compliqué.
 
A l'aide d'expressions régulières, tu sépares, dans un tableau, les éléments suivants, toujours dans cet ordre :
 
ponctuation
chiffres
lettres
ponctuation
chiffres
lettres
etc.
 
ainsi :
 
QQ20a ça donne :
""
""
QQ
""
20
a
 
Pour "WTC-11/09/2001" :
""
""
WTC
-
11
""
/
09
""
/
2001
 
 
voilà.
 
maintenant que t'as des tableaux contenant tes blocs séprarés et toujours dans cet ordre, tu fais un tri selon ces éléments, dans l'ordre alphabétique pour les lettres et les ponctuations, et numérique pour les nombres.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed