[vba] remplacer virgule par point [Résolu/Fermé]

Signaler
Messages postés
1227
Date d'inscription
jeudi 29 juillet 2004
Statut
Contributeur
Dernière intervention
25 novembre 2013
-
 tsouintsouin -
Bonjour,

Je cherche ds une macro à remplacer les point par des virgules ds une colonne.J'ai enregistré ceci avec l'enrgistreur mais ça ne fonctionne pas en macro (si je fais la même chose en manuel, ça fonctionne !!??) :
Selection.Replace What:=",", Replacement:=".", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
Donneé ds la colonne (stocké au format texte) :
-12746156,51
-871963,12
1425635,89
-183076,84
156546,58
-7551,30
2155561,34
14606,92
396738,21
59918,18
20613,11
-1553
11576
5196290,48
113265,80
5997,50
6403,00

Quelqu'un à une idée ?
Merci

3 réponses

Messages postés
1227
Date d'inscription
jeudi 29 juillet 2004
Statut
Contributeur
Dernière intervention
25 novembre 2013
436
Ok autant pour moi, j'ai trouvé, j'utilise :
With Application
.DecimalSeparator = "."
.ThousandsSeparator = " "
.UseSystemSeparators = False
End With

Et inversement à la fermeture....

A+
7
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 76687 internautes nous ont dit merci ce mois-ci

Je ne comprend pas ta solution, et j'ai exactement le même probleme que toi. Peux tu expliquer ton code stp.?
Excellente solution!
Merci pour cette solution très utile !
Si tu mets cette solution dans le sub du programme principal cela n'est utilisé que pour les fonctions et onglets utilisés par ta macro. Donc si tu fais comme moi qui laisse toujours un onglet de données initiales puis crée un onglet de travail, cela ne change pas tes données initiales !
MERCIIIIIII
bonjour

bien sont code est tres simple et astucieu mais cependant vous devez connaitre le vba un peut par excel pour vous en servir, il doit etre inclue dans le vba dans (thisworkbook)

Private Sub Workbook_Open()
With Application
.DecimalSeparator = "."
.ThousandsSeparator = " "
.UseSystemSeparators = False
End With
end sub

et a l'ouverture le systeme décimal par defaut en avec des , est convertie totalement en .

bonne solution je trouve
bonjour,

J'ai des macro liés les une aux autre pour du traitement de données, travaillant dans une grosse entreprise je dois imperativement gérer toutes les erreurs possibles sur mes macros. et, mon souci est que certains pc seront configuré pour être en décimale à "," et d'autre en "." car tous le monde ne gère pas les mêmes essais.

Mon soucis est donc que si pour X ou Y raisons ce n'est pas une personne "habituelle" qui gère mon banc d'essai, ils peuvent trouver des problemes à cause de ca.

Ma question, "Est-il possible de forcer l'importation d'un fichier .txt en mode "." quelques soient la config de base d'excel ? j'ai essayé votre macro que je trouve très rapide est ingénieuse mais à priori il n'est pas capable de forcer les "." en import.
j'ai aussi le meme problem, vous pouvez le parametrer dans le panneau de configuration, languistique region, personnalise, modifier le sympol decimal en ".", c'est tout.