Quelqu'un peut-il m=E2=80=99expliquer pourquoi cette macro fonctionne bien =
en pas =C3=A0 pas et me laisse certains points en automatique et quoi chang=
er.
Merci
R=C3=A9gis
Sub Macro2()
'
'Remplacer les points par des virgules
Columns("D:F").Select
Selection.Replace What:=3D".", Replacement:=3D",", LookAt:=3DxlPart, _
SearchOrder:=3DxlByRows, MatchCase:=3DFalse, SearchFormat:=3DFalse,=
_
ReplaceFormat:=3DFalse
End Sub
Cette macro a été testée avec Excel 2016, et elle fait le travail demandé. Tu travailles avec quelle version d'Excel? Quel est ton séparateur décimal défini dans le panneau de configuration de Windows? ATTENTION : Dans les options avancées d'Excel - section Options édition est-ce que la case "utiliser les séparateurs système" est cochée? Juste en dessous, quel est le séparateur de décimale employé? N.B. Je viens de retester la procédure suggérée dans le classeur que tu as publié, et, tout est OK, le résultat est au rendez-vous! MichD
'----------------------------------------------------------------------------- Sub test() With Application .EnableEvents = False .ScreenUpdating = False End With With Worksheets("Feuil1") 'Nom feuille à adapter au besoin With .Range("D2:F34") .Replace Chr(160), "", xlPart .NumberFormat = "# ### ###.00" .Replace what:=".", Replacement:=",", LookAt:=xlPart .Replace what:=",", Replacement:=".", LookAt:=xlPart End With End With With Application .EnableEvents = True .ScreenUpdating = True End With End Sub '----------------------------------------------------------------------------- MichD
Non Sub test() With Application .EnableEvents = False .ScreenUpdating = False End With With Worksheets("Feuil1") 'Nom feuille à adapter au besoin With .Range("D2:F34") .Replace Chr(160), "", xlPart .NumberFormat = "# ### ###.00" .Replace what:=".", Replacement:=",", LookAt:=xlPart .Replace what:=",", Replacement:=".", LookAt:=xlPart End With End With With Application .EnableEvents = True .ScreenUpdating = True End With End Sub ça ne marche pas , alors qu'en manuel avec ctrl + h rechercher . et remplacer par , là tout fonctionne très bien c'est étonnant. Merci qm
Cette macro a été testée avec Excel 2016, et elle fait le travail demandé.
Tu travailles avec quelle version d'Excel? Quel est ton séparateur décimal
défini dans le panneau de configuration de Windows?
ATTENTION : Dans les options avancées d'Excel - section Options édition
est-ce que la case "utiliser les séparateurs système" est cochée?
Juste en dessous, quel est le séparateur de décimale employé?
N.B. Je viens de retester la procédure suggérée dans le classeur que tu as
publié,
et, tout est OK, le résultat est au rendez-vous!
MichD
'-----------------------------------------------------------------------------
Sub test()
With Application
.EnableEvents = False
.ScreenUpdating = False
End With
With Worksheets("Feuil1") 'Nom feuille à adapter au besoin
With .Range("D2:F34")
.Replace Chr(160), "", xlPart
.NumberFormat = "# ### ###.00"
.Replace what:=".", Replacement:=",", LookAt:=xlPart
.Replace what:=",", Replacement:=".", LookAt:=xlPart
End With
End With
With Application
.EnableEvents = True
.ScreenUpdating = True
End With
End Sub
'-----------------------------------------------------------------------------
MichD
Non
Sub test()
With Application
.EnableEvents = False
.ScreenUpdating = False
End With
With Worksheets("Feuil1") 'Nom feuille à adapter au besoin
With .Range("D2:F34")
.Replace Chr(160), "", xlPart
.NumberFormat = "# ### ###.00"
.Replace what:=".", Replacement:=",", LookAt:=xlPart
.Replace what:=",", Replacement:=".", LookAt:=xlPart
End With
End With
With Application
.EnableEvents = True
.ScreenUpdating = True
End With
End Sub
ça ne marche pas , alors qu'en manuel avec ctrl + h rechercher . et
remplacer par , là tout fonctionne très bien c'est étonnant.
Merci qm
Cette macro a été testée avec Excel 2016, et elle fait le travail demandé. Tu travailles avec quelle version d'Excel? Quel est ton séparateur décimal défini dans le panneau de configuration de Windows? ATTENTION : Dans les options avancées d'Excel - section Options édition est-ce que la case "utiliser les séparateurs système" est cochée? Juste en dessous, quel est le séparateur de décimale employé? N.B. Je viens de retester la procédure suggérée dans le classeur que tu as publié, et, tout est OK, le résultat est au rendez-vous! MichD
'----------------------------------------------------------------------------- Sub test() With Application .EnableEvents = False .ScreenUpdating = False End With With Worksheets("Feuil1") 'Nom feuille à adapter au besoin With .Range("D2:F34") .Replace Chr(160), "", xlPart .NumberFormat = "# ### ###.00" .Replace what:=".", Replacement:=",", LookAt:=xlPart .Replace what:=",", Replacement:=".", LookAt:=xlPart End With End With With Application .EnableEvents = True .ScreenUpdating = True End With End Sub '----------------------------------------------------------------------------- MichD
Non Sub test() With Application .EnableEvents = False .ScreenUpdating = False End With With Worksheets("Feuil1") 'Nom feuille à adapter au besoin With .Range("D2:F34") .Replace Chr(160), "", xlPart .NumberFormat = "# ### ###.00" .Replace what:=".", Replacement:=",", LookAt:=xlPart .Replace what:=",", Replacement:=".", LookAt:=xlPart End With End With With Application .EnableEvents = True .ScreenUpdating = True End With End Sub ça ne marche pas , alors qu'en manuel avec ctrl + h rechercher . et remplacer par , là tout fonctionne très bien c'est étonnant. Merci qm
Jacquouille
Bonsoir Sans vouloir mimi C, si, dans ton fichier exemple, tu multiplies la colonne H par 1, tu obtiens du nombre. Jacques " Le vin est au repas ce que le parfum est à la femme." . "f4crw" a écrit dans le message de groupe de discussion : Le dimanche 18 décembre 2016 03:44:08 UTC+1, MichD a écrit :
Je me répète, Utilise le site Cjoint.com et publie une petite partie de ton fichier où certains points sont oubliés par la macro. Tu nous transmets ici l'adresse que tu auras obtenue. N'oublie pas d'indiquer dans le classeur ce que tu veux obtenir comme résultat. Sans rien voir, je ne peux pas t'aider davantage! MichD
Bonjour MichD, J'ai déposé un exemple de mon fichier comme tu la demander. Merci encore pour ton aide. Cordialement Régis http://www.cjoint.com/c/FLsndErduiC --- L'absence de virus dans ce courrier électronique a été vérifiée par le logiciel antivirus Avast. https://www.avast.com/antivirus
Bonsoir
Sans vouloir mimi C,
si, dans ton fichier exemple, tu multiplies la colonne H par 1, tu obtiens
du nombre.
Jacques
" Le vin est au repas ce que le parfum est à la femme."
.
"f4crw" a écrit dans le message de groupe de discussion :
e7d77d28-b296-4e54-8d0b-cbd6f01f615a@googlegroups.com...
Le dimanche 18 décembre 2016 03:44:08 UTC+1, MichD a écrit :
Je me répète,
Utilise le site Cjoint.com et publie une petite partie de ton fichier où
certains points sont oubliés par la macro. Tu nous transmets ici
l'adresse que tu auras obtenue. N'oublie pas d'indiquer dans le
classeur ce que tu veux obtenir comme résultat.
Sans rien voir, je ne peux pas t'aider davantage!
MichD
Bonjour MichD,
J'ai déposé un exemple de mon fichier comme tu la demander.
Merci encore pour ton aide.
Cordialement
Régis
http://www.cjoint.com/c/FLsndErduiC
---
L'absence de virus dans ce courrier électronique a été vérifiée par le logiciel antivirus Avast.
https://www.avast.com/antivirus
Bonsoir Sans vouloir mimi C, si, dans ton fichier exemple, tu multiplies la colonne H par 1, tu obtiens du nombre. Jacques " Le vin est au repas ce que le parfum est à la femme." . "f4crw" a écrit dans le message de groupe de discussion : Le dimanche 18 décembre 2016 03:44:08 UTC+1, MichD a écrit :
Je me répète, Utilise le site Cjoint.com et publie une petite partie de ton fichier où certains points sont oubliés par la macro. Tu nous transmets ici l'adresse que tu auras obtenue. N'oublie pas d'indiquer dans le classeur ce que tu veux obtenir comme résultat. Sans rien voir, je ne peux pas t'aider davantage! MichD
Bonjour MichD, J'ai déposé un exemple de mon fichier comme tu la demander. Merci encore pour ton aide. Cordialement Régis http://www.cjoint.com/c/FLsndErduiC --- L'absence de virus dans ce courrier électronique a été vérifiée par le logiciel antivirus Avast. https://www.avast.com/antivirus
Bonsoir Sans vouloir mimi C, si, dans ton fichier exemple, tu multiplies la colonne H par 1, tu obtien s du nombre. Jacques " Le vin est au repas ce que le parfum est à la femme." .
Bonsoir Sans vouloir mimi C, si, dans ton fichier exemple, tu multiplies la colonne H par 1, tu obtien s du nombre. Jacques " Le vin est au repas ce que le parfum est à la femme." .
| la case "utiliser les séparateurs système" est cochée | le séparateur de décimale employé est vide Tape une virgule dans la case juste en dessous de "utiliser les séparateurs système". MichD
| la case "utiliser les séparateurs système" est cochée
| le séparateur de décimale employé est vide
Tape une virgule dans la case juste en dessous de "utiliser les séparateurs
système".
| la case "utiliser les séparateurs système" est cochée | le séparateur de décimale employé est vide Tape une virgule dans la case juste en dessous de "utiliser les séparateurs système". MichD
MichD
Je viens de tester la macro proposée dans Excel 2010, et le résultat est bon. MichD
Je viens de tester la macro proposée dans Excel 2010, et le résultat est bon.
ATTENTION : Dans les options avancées d'Excel - section Options édition est-ce que la case "utiliser les séparateurs système" est cochée? Juste en dessous, quel est le séparateur de décimale employé?
La version d'Excel est 2007 la case "utiliser les séparateurs système" est cochée le séparateur de décimale employé est vide
Si je peux me permettre... Si ton fichier texte ne contient pas de virgule et que le séparateur décimal de ce fichier est le point (.), une des solutions serait de changer (temporairement) le séparateur avant l'import et de le remettre après Je m'esseuplik Dans les options avancées, tu décoches "Utiliser les séparateurs systèmes", dans "Séparateur de décimale" tu met le point (.) et dans séparateur de millier la virgule (,). Ensuite tu lances ton importation, normalement tu devrais n'avoir que des valeurs donc pas de remplacement à faire Tu peux ensuite cocher la case ""Utiliser les séparateurs systèmes" pour revenir à tes habitudes A la rigueur, si tu as une macro qui fait l'import tu ajoute seulement Application.UseSystemSeparators = False au début et Application.UseSystemSeparators = True à la fin Si ça ne fonctionne pas c'est peut-être du à ton fichier texte, moi c'est un extrait de celui là que je voudrais bien voir sur cjoint -- JièL sep ha rateur
Le 18/12/2016 à 17:59, f4crw a écrit :
ATTENTION : Dans les options avancées d'Excel - section Options édition
est-ce que la case "utiliser les séparateurs système" est cochée?
Juste en dessous, quel est le séparateur de décimale employé?
La version d'Excel est 2007
la case "utiliser les séparateurs système" est cochée
le séparateur de décimale employé est vide
Si je peux me permettre...
Si ton fichier texte ne contient pas de virgule et que le séparateur
décimal de ce fichier est le point (.), une des solutions serait de
changer (temporairement) le séparateur avant l'import et de le remettre
après
Je m'esseuplik
Dans les options avancées, tu décoches "Utiliser les séparateurs
systèmes", dans "Séparateur de décimale" tu met le point (.) et dans
séparateur de millier la virgule (,).
Ensuite tu lances ton importation, normalement tu devrais n'avoir que
des valeurs donc pas de remplacement à faire
Tu peux ensuite cocher la case ""Utiliser les séparateurs systèmes" pour
revenir à tes habitudes
A la rigueur, si tu as une macro qui fait l'import tu ajoute seulement
Application.UseSystemSeparators = False
au début
et
Application.UseSystemSeparators = True
à la fin
Si ça ne fonctionne pas c'est peut-être du à ton fichier texte, moi
c'est un extrait de celui là que je voudrais bien voir sur cjoint
ATTENTION : Dans les options avancées d'Excel - section Options édition est-ce que la case "utiliser les séparateurs système" est cochée? Juste en dessous, quel est le séparateur de décimale employé?
La version d'Excel est 2007 la case "utiliser les séparateurs système" est cochée le séparateur de décimale employé est vide
Si je peux me permettre... Si ton fichier texte ne contient pas de virgule et que le séparateur décimal de ce fichier est le point (.), une des solutions serait de changer (temporairement) le séparateur avant l'import et de le remettre après Je m'esseuplik Dans les options avancées, tu décoches "Utiliser les séparateurs systèmes", dans "Séparateur de décimale" tu met le point (.) et dans séparateur de millier la virgule (,). Ensuite tu lances ton importation, normalement tu devrais n'avoir que des valeurs donc pas de remplacement à faire Tu peux ensuite cocher la case ""Utiliser les séparateurs systèmes" pour revenir à tes habitudes A la rigueur, si tu as une macro qui fait l'import tu ajoute seulement Application.UseSystemSeparators = False au début et Application.UseSystemSeparators = True à la fin Si ça ne fonctionne pas c'est peut-être du à ton fichier texte, moi c'est un extrait de celui là que je voudrais bien voir sur cjoint -- JièL sep ha rateur