Voici la macro qui formate qu'une cellule.
Sub TEST()
For Each c In Selection
c.Value =3D Application.Substitute(c.Value, ",", "")
c.Value =3D Application.Substitute(c.Value, ".", ",") * 1
Selection.Style =3D "Comma"
Next
End Sub
Le probl=E8me c'est qu'elle ne fonctionne que pour une=20
cellule, hors j'ai une colonne enti=E8re =E0 formater sur une=20
feuille bien d=E9finie nomm=E9e "extraction des montants".
MERCI POUR LA SOLUTION=20
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Pierre Fauconnier
Bonjour
Peut-être que ta sélection ( l'objet Selection dans ton code ) ne contient-il qu'une seule cellule? Je te propose, si tu dois tester une colonne entière, le code suivant : Sub Remplace() Dim Cellule As Range For Each Cellule In Range("a1:a" & Range("a65536").End(xlUp).Row) Cellule = Replace(Cellule, ",", "") Cellule = Replace(Cellule, ".", ",") * 1 Next Cellule End Sub
-- Cela convient-il? ---- Pierre Fauconnier "C'est lorsqu'il y a un temps mort qu'il faut tuer le temps..." (remplacer NOSPAM par pfi pour me répondre. Merci)
--- Le Lillois wrote:
BONJOUR
Voici la macro qui formate qu'une cellule. Sub TEST() For Each c In Selection c.Value = Application.Substitute(c.Value, ",", "") c.Value = Application.Substitute(c.Value, ".", ",") * 1 Selection.Style = "Comma" Next End Sub
Le problème c'est qu'elle ne fonctionne que pour une cellule, hors j'ai une colonne entière à formater sur une feuille bien définie nommée "extraction des montants". MERCI POUR LA SOLUTION
CORDIALEMENT
Bonjour
Peut-être que ta sélection ( l'objet Selection dans ton code ) ne
contient-il qu'une seule cellule?
Je te propose, si tu dois tester une colonne entière, le code suivant :
Sub Remplace()
Dim Cellule As Range
For Each Cellule In Range("a1:a" & Range("a65536").End(xlUp).Row)
Cellule = Replace(Cellule, ",", "")
Cellule = Replace(Cellule, ".", ",") * 1
Next Cellule
End Sub
--
Cela convient-il?
----
Pierre Fauconnier
"C'est lorsqu'il y a un temps mort qu'il faut tuer le temps..."
(remplacer NOSPAM par pfi pour me répondre. Merci)
---
Le Lillois wrote:
BONJOUR
Voici la macro qui formate qu'une cellule.
Sub TEST()
For Each c In Selection
c.Value = Application.Substitute(c.Value, ",", "")
c.Value = Application.Substitute(c.Value, ".", ",") * 1
Selection.Style = "Comma"
Next
End Sub
Le problème c'est qu'elle ne fonctionne que pour une
cellule, hors j'ai une colonne entière à formater sur une
feuille bien définie nommée "extraction des montants".
MERCI POUR LA SOLUTION
Peut-être que ta sélection ( l'objet Selection dans ton code ) ne contient-il qu'une seule cellule? Je te propose, si tu dois tester une colonne entière, le code suivant : Sub Remplace() Dim Cellule As Range For Each Cellule In Range("a1:a" & Range("a65536").End(xlUp).Row) Cellule = Replace(Cellule, ",", "") Cellule = Replace(Cellule, ".", ",") * 1 Next Cellule End Sub
-- Cela convient-il? ---- Pierre Fauconnier "C'est lorsqu'il y a un temps mort qu'il faut tuer le temps..." (remplacer NOSPAM par pfi pour me répondre. Merci)
--- Le Lillois wrote:
BONJOUR
Voici la macro qui formate qu'une cellule. Sub TEST() For Each c In Selection c.Value = Application.Substitute(c.Value, ",", "") c.Value = Application.Substitute(c.Value, ".", ",") * 1 Selection.Style = "Comma" Next End Sub
Le problème c'est qu'elle ne fonctionne que pour une cellule, hors j'ai une colonne entière à formater sur une feuille bien définie nommée "extraction des montants". MERCI POUR LA SOLUTION
CORDIALEMENT
Modeste
Bonjour, la macro telle que écrite s'applique à la selection donc peut s'appliquer à une colonne entière.....
pour eviter les erreurs en cas de texte :
Sub TEST() For Each c In Selection If Not IsEmpty(c) Then c.Value = Application.Substitute(c.Value, ",", "") c.Value = Application.Substitute(c.Value, ".", ",") If IsNumeric(c.Value) Then c.Value = 1 * c.Value End If Next End Sub
Modeste Ch'ti aussi ;-))) @+
-----Message d'origine----- BONJOUR
Voici la macro qui formate qu'une cellule. Sub TEST() For Each c In Selection c.Value = Application.Substitute(c.Value, ",", "") c.Value = Application.Substitute(c.Value, ".", ",") * 1 Selection.Style = "Comma" Next End Sub
Le problème c'est qu'elle ne fonctionne que pour une cellule, hors j'ai une colonne entière à formater sur une feuille bien définie nommée "extraction des montants". MERCI POUR LA SOLUTION
CORDIALEMENT
.
Bonjour,
la macro telle que écrite s'applique à la selection
donc peut s'appliquer à une colonne entière.....
pour eviter les erreurs en cas de texte :
Sub TEST()
For Each c In Selection
If Not IsEmpty(c) Then
c.Value = Application.Substitute(c.Value, ",", "")
c.Value = Application.Substitute(c.Value, ".", ",")
If IsNumeric(c.Value) Then c.Value = 1 * c.Value
End If
Next
End Sub
Modeste Ch'ti aussi ;-)))
@+
-----Message d'origine-----
BONJOUR
Voici la macro qui formate qu'une cellule.
Sub TEST()
For Each c In Selection
c.Value = Application.Substitute(c.Value, ",", "")
c.Value = Application.Substitute(c.Value, ".", ",") * 1
Selection.Style = "Comma"
Next
End Sub
Le problème c'est qu'elle ne fonctionne que pour une
cellule, hors j'ai une colonne entière à formater sur une
feuille bien définie nommée "extraction des montants".
MERCI POUR LA SOLUTION
Bonjour, la macro telle que écrite s'applique à la selection donc peut s'appliquer à une colonne entière.....
pour eviter les erreurs en cas de texte :
Sub TEST() For Each c In Selection If Not IsEmpty(c) Then c.Value = Application.Substitute(c.Value, ",", "") c.Value = Application.Substitute(c.Value, ".", ",") If IsNumeric(c.Value) Then c.Value = 1 * c.Value End If Next End Sub
Modeste Ch'ti aussi ;-))) @+
-----Message d'origine----- BONJOUR
Voici la macro qui formate qu'une cellule. Sub TEST() For Each c In Selection c.Value = Application.Substitute(c.Value, ",", "") c.Value = Application.Substitute(c.Value, ".", ",") * 1 Selection.Style = "Comma" Next End Sub
Le problème c'est qu'elle ne fonctionne que pour une cellule, hors j'ai une colonne entière à formater sur une feuille bien définie nommée "extraction des montants". MERCI POUR LA SOLUTION