-
VBA conversion de . en ,
Bonjour, je découvre les macro VBA.
J'ai téléchargé plusieurs fichiers détail provenant de l'INSEE, et pour gagner du temp je souhaite faire une macro transformant les "." en ","sur une seule colonne (la Q)
Quand le fait manuellement, ça marche très bien, quand j'enregistre la macro, ça marche très bien, quand j'utilise la macro j'obtient des #### partout. J'ai fais plusieurs essais en assemblant des bout de code trouvés sur le net, toujours le même résultat....
Je pense que cela provient du passage du texte au nombre mais je ne souhaite pas non plus changer la langue ou les paramètres par défaut du logiciel.
Pourriez vous m'aider?
Bien cordialement, hugo
-
Bonjour,
On peut voir votre macro ?
-
Après tu peux le faire manuellement, tu sélectionnes ta colonne, tu fais un Ctrl+H pour ouvrir la fenêtre "Recherche et remplacer", tu entres ton . dans Rechercher et , dans Remplacer par, et tu cliques sur "Remplacer tout", il faut juste faire attention à ce qu'uniquement ta colonne soit sélectionnée, sinon évidemment ça remplace partout.
Et c'est peut-être la raison de ce que tu obtiens avec ta macro enregistrée, si tu as fait l'enregistrement après avoir sélectionné ta colonne (mais ça, le code que tu vas nous fournir devrait nous le dire).
-
Bonjour, merci pour vos réponses.
Alors effectivement je peux le faire manuellement, mais l'idée de la macro était de m'éviter d'avoir a le faire 10x par jour.
J'ai fais mes recherches et il semble que ce soit la conversion du texte au nombre qui pose problème. En sachant que excel utilise le . commé séparateur numérique par défaut.
J'ai fini par trouver une ligne de code qui fait exactement ce que je veux:
Code:
Sheets(MaVille).Columns(17).TextToColumns Destination:=Range("Q1"), DecimalSeparator:="."
Pour une raison que j'ai du mal a saisir ce code remplace proprement le . par une , et la valeur sont reconnues comme des nombres
Bien a vous