[vba] remplacer virgule par point

Résolu
tompols Messages postés 1273 Date d'inscription   Statut Contributeur Dernière intervention   -  
 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
A voir également:

3 réponses

tompols Messages postés 1273 Date d'inscription   Statut Contributeur Dernière intervention   435
 
Ok autant pour moi, j'ai trouvé, j'utilise :
With Application
.DecimalSeparator = "."
.ThousandsSeparator = " "
.UseSystemSeparators = False
End With

Et inversement à la fermeture....

A+
8
Chris
 
Je ne comprend pas ta solution, et j'ai exactement le même probleme que toi. Peux tu expliquer ton code stp.?
0
Pierre C
 
Excellente solution!
0
tsouintsouin
 
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
0
whisk
 
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
2
Evalf
 
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.
0
un chinois
 
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.
1