Fonction remplacer dans macro VBA : gros soucis !

Francky J

XLDnaute Nouveau
Bonjour à tous ! :D

Je suis étudiant en licence en alternance. Dans le cadre de mon projet professionnel, je dois réaliser un outil de planification de production sous Excel.

J'ai un gros problème avec une macro vba qui doit remplacer des . par des /
En fait je récupère des dates sous le format suivant :

01.06.2012

Mais Excel ne les reconnait pas comme date mais comme nombre et ça me pose des problèmes lorsque je fais des tableaux croisés par la suite.

Bref l'objectif de ma macro est d'obtenir le format suivant :

01/06/2012


En manuel ça fonctionne parfaitement lorsque j'utilise la fonction remplacer. Mais dès que j'utilise une macro ça fait n'importe quoi ! :confused:

En fait la macro me place le nombre le plus grand en premier. Dans l'exemple que j'ai cité ça donnera ça :

01.06.2012 --> 06/01/2012

La misère ! :(


Quelqu'un a une idée d'où pourrait provenir ce problème ?

J'ai déjà essayé de modifier les formats etc mais rien n'y fait...


Voilà ma macro :

Sub slash()

Range("C2").Select

Do While ActiveCell.Value <> ""

ActiveCell.Replace what:=".", replacement:="/"
ActiveCell.Offset(1, 0).Select

Loop

End Sub



Bonne journée à vous !


Franck
 

Venitien

XLDnaute Occasionnel
Re : Fonction remplacer dans macro VBA : gros soucis !

Salut,

essayes ça:

Range("A1").Select
Cells.Replace What:=".", Replacement:="/", LookAt:=xlPart, SearchOrder _
:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False

A+
 

Gorfael

XLDnaute Barbatruc
Re : Fonction remplacer dans macro VBA : gros soucis !

Salut Francky J et le form
Pas d'exemple, alors que des idée :
Changer le format de la colonne avant ou après une copie de la cellule.
2 points dans un nombre me semble bizare. Tu as tout dit ?
A+
 

Francky J

XLDnaute Nouveau
Re : Fonction remplacer dans macro VBA : gros soucis !



Bien vu pierrejean !

C'est exactement le même soucis ! En plus c'est la même entreprise ! :eek:

J'utilise la même extraction SAP que cette personne.

Je vais tester vos solutions pour voir ce que ça donne et je vous tiens au courant.


Merci beaucoup pour vos réponses rapides ! :D
 

Francky J

XLDnaute Nouveau
Re : Fonction remplacer dans macro VBA : gros soucis !

... tu es peut-être cette même personne dans une autre vie... lol

L'espace d'un moment je me suis demandé si j'étais pas somnembule ! :D

Mais je viens de découvrir qui est la personne qui a posté le message ! Je lui avait demandé de l'aide ^^

En tout cas la solution de pierrejean fonctionne :D


Sub Modif_Date_b()
'
' Modif_Date Macro
'
'
Range("C2:C" & Range("C65536").End(xlUp).Row).Select
Selection.NumberFormat = "dd/mm/yy;@"
For Each cel In Selection
cel.Value = CDate(Replace(cel.Value, ".", "/"))
Next
End Sub



MERCI BEAUCOUP !!

Après des jours de galère, problème résolu !


Bonne journée à vous :)


Franck
 

Discussions similaires

Statistiques des forums

Discussions
311 720
Messages
2 081 886
Membres
101 830
dernier inscrit
sonia poulaert