Bonjour,
J'utilise au boulot la version Excel2002 (Excel 97 chez moi et tout
fonctionne snif)
Je souhaiterai, sur une feuille, remplacer dans des valeurs (Quantité
convertit en texte - @) contenues dans une colonne, le séparateur de décimale
virgule "," par un point "." SANS devoir toucher au paramètrages
internationaux (outil/option...) via le VBA.
Lorsque je fais en manuel ctrl+h... résultat ok
mais avec les codes suivants :
A -
Sub Macro4()
Sheets("CSV").Select
Cells.Replace What:=",", Replacement:=".", LookAt:=xlPart, SearchOrder _
:=xlByRows, MatchCase:=False, SearchFormat:=False,
ReplaceFormat:=False
End Sub
B -
Sub Macro5()
Cells.Select
Application.FindFormat.NumberFormat = "@"
Application.ReplaceFormat.NumberFormat = "@"
Selection.Replace What:=",", Replacement:=".", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=True, _
ReplaceFormat:=True
End Sub
... ben rien :o(
Merci par avance pour vos réponses.
--
Le Phénomene
Je viens de découvrir ce forum... De grands merci aux nombreux participants !!
Tu sélectionnes ta plages à traiter et tu appelles la procédure suivante :
'----------------------- Sub RemplacerVirguleFormatNombre()
Dim Tblo As Variant, Rg As Range, Are As Range Set Rg = Selection For Each Are In Rg.Areas Tblo = Are For a = 1 To UBound(Tblo, 1) For b = 1 To UBound(Tblo, 2) 'Remplace la virgule par un point Tblo(a, b) = Replace(Tblo(a, b), ",", ".") Next Next Are.NumberFormat = "# ##0.00" Are = Tblo Next Set Rg = Nothing: Set Are = Nothing End Sub '-----------------------
"Le Phénomene" a écrit dans le message de news:
Bonjour, J'utilise au boulot la version Excel2002 (Excel 97 chez moi et tout fonctionne snif) Je souhaiterai, sur une feuille, remplacer dans des valeurs (Quantité convertit en texte - @) contenues dans une colonne, le séparateur de décimale virgule "," par un point "." SANS devoir toucher au paramètrages internationaux (outil/option...) via le VBA. Lorsque je fais en manuel ctrl+h... résultat ok mais avec les codes suivants : A - Sub Macro4() Sheets("CSV").Select Cells.Replace What:=",", Replacement:=".", LookAt:=xlPart, SearchOrder _ :=xlByRows, MatchCase:úlse, SearchFormat:úlse, ReplaceFormat:úlse End Sub
B - Sub Macro5() Cells.Select Application.FindFormat.NumberFormat = "@" Application.ReplaceFormat.NumberFormat = "@" Selection.Replace What:=",", Replacement:=".", LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:úlse, SearchFormat:=True, _ ReplaceFormat:=True End Sub
... ben rien :o( Merci par avance pour vos réponses.
-- Le Phénomene Je viens de découvrir ce forum... De grands merci aux nombreux participants !!
Tu sélectionnes ta plages à traiter et tu appelles la procédure suivante :
'-----------------------
Sub RemplacerVirguleFormatNombre()
Dim Tblo As Variant, Rg As Range, Are As Range
Set Rg = Selection
For Each Are In Rg.Areas
Tblo = Are
For a = 1 To UBound(Tblo, 1)
For b = 1 To UBound(Tblo, 2)
'Remplace la virgule par un point
Tblo(a, b) = Replace(Tblo(a, b), ",", ".")
Next
Next
Are.NumberFormat = "# ##0.00"
Are = Tblo
Next
Set Rg = Nothing: Set Are = Nothing
End Sub
'-----------------------
"Le Phénomene" <LePhnomene@discussions.microsoft.com> a écrit dans le message de news:
A7DC88DC-5D21-47F8-B4AD-C3B727A27D5D@microsoft.com...
Bonjour,
J'utilise au boulot la version Excel2002 (Excel 97 chez moi et tout
fonctionne snif)
Je souhaiterai, sur une feuille, remplacer dans des valeurs (Quantité
convertit en texte - @) contenues dans une colonne, le séparateur de décimale
virgule "," par un point "." SANS devoir toucher au paramètrages
internationaux (outil/option...) via le VBA.
Lorsque je fais en manuel ctrl+h... résultat ok
mais avec les codes suivants :
A -
Sub Macro4()
Sheets("CSV").Select
Cells.Replace What:=",", Replacement:=".", LookAt:=xlPart, SearchOrder _
:=xlByRows, MatchCase:úlse, SearchFormat:úlse,
ReplaceFormat:úlse
End Sub
B -
Sub Macro5()
Cells.Select
Application.FindFormat.NumberFormat = "@"
Application.ReplaceFormat.NumberFormat = "@"
Selection.Replace What:=",", Replacement:=".", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:úlse, SearchFormat:=True, _
ReplaceFormat:=True
End Sub
... ben rien :o(
Merci par avance pour vos réponses.
--
Le Phénomene
Je viens de découvrir ce forum... De grands merci aux nombreux participants !!
Tu sélectionnes ta plages à traiter et tu appelles la procédure suivante :
'----------------------- Sub RemplacerVirguleFormatNombre()
Dim Tblo As Variant, Rg As Range, Are As Range Set Rg = Selection For Each Are In Rg.Areas Tblo = Are For a = 1 To UBound(Tblo, 1) For b = 1 To UBound(Tblo, 2) 'Remplace la virgule par un point Tblo(a, b) = Replace(Tblo(a, b), ",", ".") Next Next Are.NumberFormat = "# ##0.00" Are = Tblo Next Set Rg = Nothing: Set Are = Nothing End Sub '-----------------------
"Le Phénomene" a écrit dans le message de news:
Bonjour, J'utilise au boulot la version Excel2002 (Excel 97 chez moi et tout fonctionne snif) Je souhaiterai, sur une feuille, remplacer dans des valeurs (Quantité convertit en texte - @) contenues dans une colonne, le séparateur de décimale virgule "," par un point "." SANS devoir toucher au paramètrages internationaux (outil/option...) via le VBA. Lorsque je fais en manuel ctrl+h... résultat ok mais avec les codes suivants : A - Sub Macro4() Sheets("CSV").Select Cells.Replace What:=",", Replacement:=".", LookAt:=xlPart, SearchOrder _ :=xlByRows, MatchCase:úlse, SearchFormat:úlse, ReplaceFormat:úlse End Sub
B - Sub Macro5() Cells.Select Application.FindFormat.NumberFormat = "@" Application.ReplaceFormat.NumberFormat = "@" Selection.Replace What:=",", Replacement:=".", LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:úlse, SearchFormat:=True, _ ReplaceFormat:=True End Sub
... ben rien :o( Merci par avance pour vos réponses.
-- Le Phénomene Je viens de découvrir ce forum... De grands merci aux nombreux participants !!
JB
Bonjour,
Sub convVirgulePoint() For Each c In Selection c.NumberFormat = "@" c.Value = CStr(Replace(c.Text, ",", ".")) Next c End Sub
Avec formattage:
Sub convVirgulePoint2() For Each c In Selection c.NumberFormat = "@" c.Value = Replace(Format(c.Text, "# ##0.00"), ",", ".") Next c End Sub
Bonjour, J'utilise au boulot la version Excel2002 (Excel 97 chez moi et tout fonctionne snif) Je souhaiterai, sur une feuille, remplacer dans des valeurs (Quantité convertit en texte - @) contenues dans une colonne, le séparateur de d écimale virgule "," par un point "." SANS devoir toucher au paramètrages internationaux (outil/option...) via le VBA. Lorsque je fais en manuel ctrl+h... résultat ok mais avec les codes suivants : A - Sub Macro4() Sheets("CSV").Select Cells.Replace What:=",", Replacement:=".", LookAt:=xlPart, Sear chOrder _ :=xlByRows, MatchCase:úlse, SearchFormat:úlse, ReplaceFormat:úlse End Sub
B - Sub Macro5() Cells.Select Application.FindFormat.NumberFormat = "@" Application.ReplaceFormat.NumberFormat = "@" Selection.Replace What:=",", Replacement:=".", LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:úlse, SearchFormat:=True , _ ReplaceFormat:=True End Sub
... ben rien :o( Merci par avance pour vos réponses.
-- Le Phénomene Je viens de découvrir ce forum... De grands merci aux nombreux particip ants !!
Bonjour,
Sub convVirgulePoint()
For Each c In Selection
c.NumberFormat = "@"
c.Value = CStr(Replace(c.Text, ",", "."))
Next c
End Sub
Avec formattage:
Sub convVirgulePoint2()
For Each c In Selection
c.NumberFormat = "@"
c.Value = Replace(Format(c.Text, "# ##0.00"), ",", ".")
Next c
End Sub
On 19 mar, 12:32, Le Phénomene <LePhnom...@discussions.microsoft.com>
wrote:
Bonjour,
J'utilise au boulot la version Excel2002 (Excel 97 chez moi et tout
fonctionne snif)
Je souhaiterai, sur une feuille, remplacer dans des valeurs (Quantité
convertit en texte - @) contenues dans une colonne, le séparateur de d écimale
virgule "," par un point "." SANS devoir toucher au paramètrages
internationaux (outil/option...) via le VBA.
Lorsque je fais en manuel ctrl+h... résultat ok
mais avec les codes suivants :
A -
Sub Macro4()
Sheets("CSV").Select
Cells.Replace What:=",", Replacement:=".", LookAt:=xlPart, Sear chOrder _
:=xlByRows, MatchCase:=False, SearchFormat:=False,
ReplaceFormat:=False
End Sub
B -
Sub Macro5()
Cells.Select
Application.FindFormat.NumberFormat = "@"
Application.ReplaceFormat.NumberFormat = "@"
Selection.Replace What:=",", Replacement:=".", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=True , _
ReplaceFormat:=True
End Sub
... ben rien :o(
Merci par avance pour vos réponses.
--
Le Phénomene
Je viens de découvrir ce forum... De grands merci aux nombreux particip ants !!
Bonjour, J'utilise au boulot la version Excel2002 (Excel 97 chez moi et tout fonctionne snif) Je souhaiterai, sur une feuille, remplacer dans des valeurs (Quantité convertit en texte - @) contenues dans une colonne, le séparateur de d écimale virgule "," par un point "." SANS devoir toucher au paramètrages internationaux (outil/option...) via le VBA. Lorsque je fais en manuel ctrl+h... résultat ok mais avec les codes suivants : A - Sub Macro4() Sheets("CSV").Select Cells.Replace What:=",", Replacement:=".", LookAt:=xlPart, Sear chOrder _ :=xlByRows, MatchCase:úlse, SearchFormat:úlse, ReplaceFormat:úlse End Sub
B - Sub Macro5() Cells.Select Application.FindFormat.NumberFormat = "@" Application.ReplaceFormat.NumberFormat = "@" Selection.Replace What:=",", Replacement:=".", LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:úlse, SearchFormat:=True , _ ReplaceFormat:=True End Sub
... ben rien :o( Merci par avance pour vos réponses.
-- Le Phénomene Je viens de découvrir ce forum... De grands merci aux nombreux particip ants !!
Le Phénomene
Acceptez mes excuses pour le délai de réponse... coincé en réunion !! Je vous remercie MichDenis & JB pour vos promptes réponses. Vos solutions fonctionnes et me retirent une belle épine du pied. Bravo pour cette solidarité. -- Le Phénomene
Acceptez mes excuses pour le délai de réponse... coincé en réunion !!
Je vous remercie MichDenis & JB pour vos promptes réponses.
Vos solutions fonctionnes et me retirent une belle épine du pied.
Bravo pour cette solidarité.
--
Le Phénomene
Acceptez mes excuses pour le délai de réponse... coincé en réunion !! Je vous remercie MichDenis & JB pour vos promptes réponses. Vos solutions fonctionnes et me retirent une belle épine du pied. Bravo pour cette solidarité. -- Le Phénomene