Macro Remplacement Point

Bonjour,

J'effectue actuellement une extraction excel depuis un logiciel (RP) et souhaite réutiliser ces données (monétaires) dans un classeur Excel.

Or, dans mon extraction, certaines données apparaissent sous le format "€x.xxx,xx" (considéré comme texte), d'autres sous le format "xxx,xx" (considéré comme nombre). Le but étant de supprimer tous les points séparateurs de milliers et sigles €, j'utilise le code suivant :

Selection.Replace What:=".", Replacement:="", LookAt:=xlPart, _
        SearchOrder:=xlByRows, MatchCase:=True, SearchFormat:=True, _
        ReplaceFormat:=False

Problème : les données initialement sous format "€x.xxx,xx" deviennent "xxxx,xx". jusque là aucun problème (d'autant que la suppression du sigle € survient avec la suppression du point ???). Toutefois dans le même temps, les données de type "xxx,xx" se voient privées de leur virgule (VBA semble confondre point et virgule pour les données numériques).

nb : Pour obtenir le code ci-dessus, j'ai enregistré une macro en utilisant la fonction "Rechercher et Remplacer". Il se trouve qu'en utilisant la fonction manuellement, le résultat obtenu est celui attendu. Mais cela ne marche pas via la macro.

Merci pour votre aide.

Bonjour,

Sans VBA, tu sélectionnes ta colonne. Tu sélectionnes "Convertir" (je suis sous Excel 2010).

Aller à l'étape 3, cliquer sur "avancé", choisir le séparateur décimal. Cliquer sur le point. Et terminer...

Cdlt

Bonjour,

je rencontre exactement le même problème que Yanncie72 et je ne comprends pas la solution que tu proposes Jean-Eric. Pourrais-tu être plus précis sur ce que tu appelles "convertir"?

D'autre part le but pour nous est de faire une macro ensuite avec cette commande, donc si ça ne marche que manuellement ça ne résout pas le problème.

Merci d'avance pour ta réponse!

Bonjour, Salut à tous,

Une formule à essayer :

=CNUM(SUBSTITUE(A1;".";""))

Bonsoir,

un petit fichier pour exemple de votre situation.

Merci par avance.

Cdlt

Super, la formule marche parfaitement Raja! Merci à toi aussi Jean-Eric.

Le mystère reste entier quant à la raison pour laquelle la fonction "remplacer par" assimile points et virgules lorsqu'elle est exécutée en macro, mais cette solution de contournement est en tout cas très efficace.

Bonne journée!

Bonjour,

Tant mieux. Si on avait ton fichier, on aurait pu t'expliquer la raison.

Voila ce que j'ai utilisé

193extraction.zip (5.98 Ko)
Rechercher des sujets similaires à "macro remplacement point"