OVH Cloud OVH Cloud

Pb macro de mise en forme

20 réponses
Avatar
lolo
Bonjour =E0 tous

Voila j'exporte des donn=E9es de SAP et j'ai cr=E9e une macro me
permettant de remmettre en forme ma feuille excel...
Mais j'ai un probl=E8me

Dans la colonne E j'ai ceci :
4,000 EA
22,000 EA
20,000 EA
149,000 EA

J'applique ma macro

Sub remplacer()
Range("E:E").Replace " EA", ""
Range("E:E").Replace " M", ""
Range("A:B").EntireColumn.Delete
End Sub


Et ensuite j'obtiens ceci
4 000
22 000
20 000
149 000

J'ai la virgule qui disparait...comment cela ce fait il ?

Merci de votre aide=20

A+

10 réponses

1 2
Avatar
Phenix21
Essaie de remplacer le point par la virgule dans le panneau de config,
excel devrait alors comprendre que la virgule est le séparateur
décimal



Ok j'ai regardé dans panneau de conf c'est pas la virgule ca m'a l'air
d'être un point...
Je viens d'essayer ce que m'a donnée Paul V mais ca ne fonctionne pas
j'ai toujours
le resultats suivant 4 000 à la place de 4 ....

Merci de votre aide je pense qu'on va y arriver lol




Dans panneau de configuration -> options régionales, le séparateur
décimal c'est bien la virgule ?

Autrement si excel comprend les données comme style anglo-saxon, et
que le point est le séparateur décimal des anglo-saxons, peut etre
essaie en remplacant les virgules par des points...

Enfin, je n'ai rien testé...




Salut Phenix21

En fait la virgule est bien le separateur de décimales...moi quand je
lance ma macro je voudrais avoir à la place de 4,000 EA avoir juste 4

Comment puis je faire ça ?

Merci beaucoup

A+






Avatar
lolo
Salut

je viens de changer le point en virgule et rien n'y fait..
par contre si je selectionne la colonne et que je fais edition-->
remplacer--> et que je met 000 et que j'appuie sur remplacer tout cela
fonctionne !!

je deviens fou !

merci de votre aide

A+
Avatar
Paul V
Hello,

Je ne crois pas qu'il y ait de quoi devenir fou.
En remplacant 000 par rien, tu divise le nombre initial(4000) par 1000 et tu
obtiens 4.
C'est-y pas ce que je suggerais de faire en corrigeant ta procédure avec
Range("E:E").Replace "000 EA", ""
ou encore mieux
Range("E:E").Replace ",000 EA", ""

Paul V

"lolo" a écrit dans le message de news:

Salut

je viens de changer le point en virgule et rien n'y fait..
par contre si je selectionne la colonne et que je fais edition-->
remplacer--> et que je met 000 et que j'appuie sur remplacer tout cela
fonctionne !!

je deviens fou !

merci de votre aide

A+



Avatar
lolo
Oui paul j'avais bien compris
Mais le pb c'est que quand j'ai mis ça dans ma procedure
"Range("E:E").Replace "000 EA", "" bah ca ne fonctionnait pas du tout
Veux tu que je t'envoie mon fichier ?

Merci de ton aide je vais retenter encore une fois

A+


Hello,

Je ne crois pas qu'il y ait de quoi devenir fou.
En remplacant 000 par rien, tu divise le nombre initial(4000) par 1000 et tu
obtiens 4.
C'est-y pas ce que je suggerais de faire en corrigeant ta procédure avec
Range("E:E").Replace "000 EA", ""
ou encore mieux
Range("E:E").Replace ",000 EA", ""

Paul V

"lolo" a écrit dans le message de news:

Salut

je viens de changer le point en virgule et rien n'y fait..
par contre si je selectionne la colonne et que je fais edition-->
remplacer--> et que je met 000 et que j'appuie sur remplacer tout cela
fonctionne !!

je deviens fou !

merci de votre aide

A+





Avatar
Paul V
Hello lolo

Mets le sur cjoint, je ne suis pas le seul à suivre ;-)

A+
Paul V

"lolo" a écrit dans le message de news:

Oui paul j'avais bien compris
Mais le pb c'est que quand j'ai mis ça dans ma procedure
"Range("E:E").Replace "000 EA", "" bah ca ne fonctionnait pas du tout
Veux tu que je t'envoie mon fichier ?

Merci de ton aide je vais retenter encore une fois

A+


Hello,

Je ne crois pas qu'il y ait de quoi devenir fou.
En remplacant 000 par rien, tu divise le nombre initial(4000) par 1000 et
tu
obtiens 4.
C'est-y pas ce que je suggerais de faire en corrigeant ta procédure avec
Range("E:E").Replace "000 EA", ""
ou encore mieux
Range("E:E").Replace ",000 EA", ""

Paul V

"lolo" a écrit dans le message de news:

Salut

je viens de changer le point en virgule et rien n'y fait..
par contre si je selectionne la colonne et que je fais edition-->
remplacer--> et que je met 000 et que j'appuie sur remplacer tout cela
fonctionne !!

je deviens fou !

merci de votre aide

A+





Avatar
lolo
Salut

Me revoilou....

Voici le lien c joint !

http://cjoint.com/?gxp4iStHgN

Merci de votre aide

A+
Avatar
lolo
Salut à vous tous


Ca y'est j'ai enfin trouver la solution....

Sub remplacer()
For Each c In Range("E:E")
If c.Value <> "" Then
c.Value = Replace(c.Value, ",", ".")
c.Value = Replace(c.Value, " EA", "")
c.Value = Replace(c.Value, " M", "")
End If
Next c
Range("A:B").EntireColumn.Delete
Range("1:3").EntireRow.Delete
End Sub


Merci à vous de m'avoir aidé tout au long de cette journée

A bientôt pour de nouvelles questions !

A+ et bon week end à tous
Avatar
DesseJ
Bonjour,

Je m'imisce dans la discussion. J'ai le séparateur décimal Point dans
le panneau de conf.

Si j'exécute la macro comme ceci, mon 4,000 devient bien 4 :
Sub remplacer()'
'Macro créer par Laurent Le 22/06/06
Range("E:E").Replace ",", "."
Range("E:E").Replace " EA", ""
Range("E:E").Replace " M", ""
Range("A:B").EntireColumn.Delete
Range("1:3").EntireRow.Delete
End Sub

C'est ça ?

Cordialement,
Stéph. D.



Salut

Me revoilou....

Voici le lien c joint !

http://cjoint.com/?gxp4iStHgN

Merci de votre aide

A+


Avatar
Paul V
Hello lolo,

Mauvaise nouvelle pour toi.
Chez moi, ma macro modifiée fonctionne parfaitement.

Tu dois avoir un réel problème de parametrage.

Essaye sur une autre bécane.

Bonne chance

Paul V
"lolo" a écrit dans le message de news:

Salut

Me revoilou....

Voici le lien c joint !

http://cjoint.com/?gxp4iStHgN

Merci de votre aide

A+



Avatar
lolo
Salut

Merci à tous pour votre aide...
J'ai enfin trouvé la soluce...

Merci du coup de mimine car quand on est novice en vb c'est chaud de
faire des bons trucs sur excel...

Merci encore

A+
1 2