Gestion des float : "," et "." - VB/VBA/VBS - Programmation
Marsh Posté le 22-04-2003 à 12:48:12
Vous n'avez pas d'idée ce matin ? Je suis presque persuadé qu'il y a une commande... ou un NumberFormat spécifique... reste à trouver lequel
Marsh Posté le 22-04-2003 à 12:59:05
Jamais trouvé.
J'utilise cette fonction (de merde )
Code :
|
C pas terrible, mais j'ai rien trouvé de mieu
Marsh Posté le 22-04-2003 à 13:01:26
Txs ! je m'étais codé une petite moulinette à partir des strings en attendant une commande VBA... Il n'y en a pas, je reste à ma moulinette !
Ralala ce VBA/Excel
Marsh Posté le 24-04-2003 à 07:52:33
Ton problème est que VB ne comprend que les expressions du genre "3.14" et non "3,14". Si tu essayes de taper l'expression string "3.14" dans une variable de type Double, ça marchera. Mais "3,14" générera une erreur. Quand le cas se présente, il y a une manière courte de procéder:
Code :
|
Dans mon boulot, je reçois jamais de nombre avec séparateur de milliers, et si tu en reçois, il faudra procéder de la même manière, mais pour les éliminer (donc remplacer par chaîne vide).
Marsh Posté le 24-04-2003 à 11:27:24
drasche a écrit : Ton problème est que VB ne comprend que les expressions du genre "3.14" et non "3,14". Si tu essayes de taper l'expression string "3.14" dans une variable de type Double, ça marchera. Mais "3,14" générera une erreur. Quand le cas se présente, il y a une manière courte de procéder:
|
Bah nan, le problème justement, c'est que si c'est du VBA (et non VB) le séparateur reconnu lors de l'interprétation des chaînes est dépendant des paramètres de l'utilisateur.
Autrement dis, si tu t'amuse à mettre "@" comme sépartateur de décimale dans tes paramètres régionnaux, ben ton VBA, il n'acceptera que "3@14", et non "3,14" ni "3.14" (par contre, il acceptera 3.14
Du coup ma fonction me semble la plus correcte, puisqu'elle permet de s'en sortir à coup sûr dans 100% des cas, même si l'utilisateur est un débile profonds qui utilise n'importe quoi.
Marsh Posté le 24-04-2003 à 12:27:22
déformation professionnelle, je suis sur le même projet depuis 4 ans et le séparateur décimal ne peut strictement être que la virgule dans notre configuration
Marsh Posté le 22-04-2003 à 11:04:42
Lors d'une extraction, des variables de types 12.000 sont sorties d'une base
Je veux les utiliser comme des float, probleme, mon PC a comme séparateur ","
Dans l'enteprise le Control Panel est bloqué.
Donc je cherche la commande, macro éventuelle qui me permet de faire reconnaitre 1.000 (string) en 1 (variable integer ou decimale)
Merci aux Nurs, Drashes etc etc qui vondront bien m'aider...
Ralala ces stages où on nous mets sur VBA alors qu'on est pas spécialiste