Macro enregistrée qui ne fonctionne pas.

Daroumx

XLDnaute Nouveau
Bonjour à tous,

Alors je vous explique mon problème. J'ai enregistré une macro qui remplace les "," par des "." dans une plage de cellules constitué que de chiffres. J'obtient alors ce code
Code:
    Range("A2").Select
    Range(Selection, Selection.End(xlDown)).Select
    Selection.Replace What:=",", Replacement:=".", LookAt:=xlPart, _
        SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
        ReplaceFormat:=False

Je lance alors la macro enregistrée dans une plage identique c'est à dire de A2 jusqu'à la dernière cellule active dans la colonne A et rien ne se passe les "," ne sont pas remplacées par des "." . Le remplacement s'effectue normalement manuellement.

Voila j'espère que vous pouvez me renseigner sur comment rendre le code de la macro enregistrée opérationnelle.Merci d'avance ;).
 

dra72

XLDnaute Occasionnel
Re : Macro enregistrée qui ne fonctionne pas.

Rebonjour Daroumx ,

Pour ma part j'utiliserai plutôt ce code:

Code:
Dim R As Range
Dim Cell As Range

Set R = Range("A1:A" & Range("A2").End(xlDown).Row)

For Each Cell In R
  Cell = Replace(Cell, ",", ".")
Next

A utiliser toujours sur des cellules au format Texte
 

Daroumx

XLDnaute Nouveau
Re : Macro enregistrée qui ne fonctionne pas.

Bonjour Dra72,

Merci pour ta réponse je viens de tester le code que tu m'as donné en l'appliquant à ma feuille mais le remplacement des "," par des "." ne s'effectue pas voici le code que j'ai mis
Code:
Sub remplaceent()
Dim l As Long
Dim derl As Long
Dim r As Range
derl = Range("A1000000").End(xlUp).Row
Set r = Range("A2:A" & derl)
r.NumberFormat = "@"
For Each cell In r
cell = Replace(cell, ",", ".")
Next

Voila en espérant que ça peut t'orienter. Et merci d'avance :D
 

Daroumx

XLDnaute Nouveau
Re : Macro enregistrée qui ne fonctionne pas.

Re bonjour dra72,

J'ai retesté en modifiant un tout petit peu le code et ça semble fonctionner
Code:
Sub test()
Dim l As Long
Dim derl As Long
Dim r As Range
Dim cell As Range
derl = Range("A1000000").End(xlUp).Row
Set r = Range("A2:A" & derl)
r.NumberFormat = "@"
For Each cell In r
cell = Replace(cell, ",", ".", 1)
Next
End Sub

Merci pour ton aide encore ça m'a été vraiment utile :D.
A la prochaine
 

dra72

XLDnaute Occasionnel
Re : Macro enregistrée qui ne fonctionne pas.

Bonjour Daroumx,

Je suis ravi de t'avoir aidé à résoudre ton problème.

Par contre, je ne vois pas pourquoi mon code ne fonctionnait pas.

Je suppose que tes cellules n'étaient pas au format Texte?

Bonne journée.
 

Discussions similaires

Réponses
1
Affichages
127

Statistiques des forums

Discussions
312 305
Messages
2 087 084
Membres
103 459
dernier inscrit
Arnocal