Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Remplacement auto

42 réponses
Avatar
f4crw
Bonjour ou Bonsoir,

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

10 réponses

1 2 3 4 5
Avatar
News.aioe.org
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
Avatar
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
Avatar
f4crw
Le dimanche 18 décembre 2016 15:53:54 UTC+1, News.aioe.org a écri t :
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 cl asseur que tu as
publié,
et, tout est OK, le résultat est au rendez-vous!
MichD

Bonsoir
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
Avatar
f4crw
Le dimanche 18 décembre 2016 16:23:49 UTC+1, Jacquouille a écrit  :
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
Pour la colonne H oui pour la i c'est pas bon comme vous pouvez le voir en ligne 10 et au prochain chargement de données ce ne sera pas la mà ªme.
J'ai besoin de ces valeurs pour trier les lignes < que une certaine valeur que l'on définit avant le trie.
Merci à vous
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
Avatar
f4crw
Le dimanche 18 décembre 2016 17:59:46 UTC+1, f4crw a écrit :
Le dimanche 18 décembre 2016 15:53:54 UTC+1, News.aioe.org a éc rit :
Cette macro a été testée avec Excel 2016, et elle fait l e 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 coc hé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
Bonsoir
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

Il y a une option en regard des cellules repérées en vert "Conver tir en nombre" mais je n'arrive pas à l'exprimer dans la macro
Avatar
f4crw
Le dimanche 18 décembre 2016 18:18:41 UTC+1, f4crw a écrit :
Le dimanche 18 décembre 2016 17:59:46 UTC+1, f4crw a écrit  :
Le dimanche 18 décembre 2016 15:53:54 UTC+1, News.aioe.org a à ©crit :
> 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éparate ur décimal
> défini dans le panneau de configuration de Windows?
>
> ATTENTION : Dans les options avancées d'Excel - section Option s édition
> est-ce que la case "utiliser les séparateurs système" est c oché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 l e classeur que tu as
> publié,
> et, tout est OK, le résultat est au rendez-vous!
>
> MichD
>
Bonsoir
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

Il y a une option en regard des cellules repérées en vert "Conv ertir en nombre" mais je n'arrive pas à l'exprimer dans la macro

"Convertir en nombre" autant pour moi ça ne change pas
désolé
Avatar
News.aioe.org
| 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
Avatar
MichD
Je viens de tester la macro proposée dans Excel 2010, et le résultat est bon.
MichD
Avatar
f4crw
Le dimanche 18 décembre 2016 23:02:02 UTC+1, MichD a écrit :
Je viens de tester la macro proposée dans Excel 2010, et le rés ultat est bon.
MichD

Bonjour MichD,
Merci pour tout ces essais et ton temps, je n'ai que la version d'Excel 200 7 donc je continuerai à faire le remplacement en manuel avec ctrl + h rechercher . et remplacer par , bien que cela provoque une intervention da ns le processus d'extraction et de décodage somme toute pas très importante.
Encore merci.
Avatar
JièL
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
--
JièL sep ha rateur
1 2 3 4 5