OVH Cloud OVH Cloud

points et virgules

5 réponses
Avatar
tiah
Hello tous !

je sais que le sujet a =E9t=E9 trait=E9 et retrait=E9 !

mais je ne trouve pas comment arrang=E9 mon probl=E8me, m=EAme apr=E8s de
multiples recherches

J'ai un fichier contenant des nombres avec le point comme d=E9cimale

je voudrais les transformer en virgule.


j'ai fait une macro qui remplace les points par des virgules.
mais lorsque je l'ex=E9cute, il laisse les nombres en format texte
apr=E8s avoir remplacer le point par la virgule.

je peux faire un menu Donn=E9es/Convertir, pas de probl=E8mes.

mais pour certains nombres, le remplacement du point est incorrect.
exemple :

25.2840000

est remplac=E9 par

252 840 000

=E0 d'.autres endroits, c'est pourtant correct :

1001.34 est remplac=E9 par :

1001,34


Pourquoi la macro ne remplace-t-elle pas comme je le fais moi-m=EAme ?
quand je fais un "Recherche/Remplace" manuellement, tout est beau.

je cherche une solution qui ne n=E9cessite pas de modifier le code, ou
les param=E8tres r=E9gionaux, est-ce que =E7a existe ?

merci !!

tiah.

5 réponses

Avatar
Clément Marcotte
Bonjour,

Une fois que tu as remplacé le point par une virgule force la conversion en
nombre en multipliant par 1


"tiah" a écrit dans le message de news:

Hello tous !

je sais que le sujet a été traité et retraité !

mais je ne trouve pas comment arrangé mon problème, même après de
multiples recherches

J'ai un fichier contenant des nombres avec le point comme décimale

je voudrais les transformer en virgule.


j'ai fait une macro qui remplace les points par des virgules.
mais lorsque je l'exécute, il laisse les nombres en format texte
après avoir remplacer le point par la virgule.

je peux faire un menu Données/Convertir, pas de problèmes.

mais pour certains nombres, le remplacement du point est incorrect.
exemple :

25.2840000

est remplacé par

252 840 000

à d'.autres endroits, c'est pourtant correct :

1001.34 est remplacé par :

1001,34


Pourquoi la macro ne remplace-t-elle pas comme je le fais moi-même ?
quand je fais un "Recherche/Remplace" manuellement, tout est beau.

je cherche une solution qui ne nécessite pas de modifier le code, ou
les paramètres régionaux, est-ce que ça existe ?

merci !!

tiah.
Avatar
tiah
allo !

ca ne change rien par contre à mon 25.28 qui devient 252 840

tiah,
Avatar
JB
Bonsoir,

Très souvent, le pgm ci dessous suffit:

Sub TransformePoint()
For Each c In Selection
If Left(c.Formula, 1) <> "=" Then
c.Value = c.Value ' ou
c.value=Val(c.value)
End If
Next c
End Sub

Si tu n'y parviens pas, envoie un fichier xls avec un échantillon des
cellules récalcitrantes

Cordialement JB
Avatar
Antoine76
Bonsoir,
une solution peut-être plus astucieuse :
le fichier que tu as reçu provient sans doute du monde anglo-saxon ; pour
le convertir de manière subtile mais efficace (aussi et à moindre peine), tu
pourrais aller dans le panneau de configuration / paramètres régionaux /
onglet nombres et pour les décimales tu sélectionnes temporairement le
point. Ensuite, tu charges ton fichier que tu avais préalablement stocké sur
un support temporaire (disquette, cd...), et là seulement, tu vas retourner
dans les paramètres régionaux pour sélectionner de nouveau la virgule pour
décimale; alors seulement ton fichier a été entièrement converti avec la
virgules pour les seules décimales, et tu peux l'enregistrer sur ton disque.
"tiah" a écrit dans le message de news:

Hello tous !

je sais que le sujet a été traité et retraité !

mais je ne trouve pas comment arrangé mon problème, même après de
multiples recherches

J'ai un fichier contenant des nombres avec le point comme décimale

je voudrais les transformer en virgule.


j'ai fait une macro qui remplace les points par des virgules.
mais lorsque je l'exécute, il laisse les nombres en format texte
après avoir remplacer le point par la virgule.

je peux faire un menu Données/Convertir, pas de problèmes.

mais pour certains nombres, le remplacement du point est incorrect.
exemple :

25.2840000

est remplacé par

252 840 000

à d'.autres endroits, c'est pourtant correct :

1001.34 est remplacé par :

1001,34


Pourquoi la macro ne remplace-t-elle pas comme je le fais moi-même ?
quand je fais un "Recherche/Remplace" manuellement, tout est beau.

je cherche une solution qui ne nécessite pas de modifier le code, ou
les paramètres régionaux, est-ce que ça existe ?

merci !!

tiah.
Avatar
tiah
Antoine, ta solution est pas pire, mais les nombres restent en format
"texte"
il faut quand même les convertir.

et comme je recois souvent des fichiers de ce genre, je ne veux pas
aller changer les paramètres régionaux tout le temps ! :)

JB, j'essayais de trouver une solution non "programmable"
mais ça a l'air que ça fonctionne pas.

alors je vais prendre un peu de tous les trucs et faire une petite
procédure.

merci à tous !