VBA - Supprimer les slash dans une date

Résolu
nabhalia Messages postés 23 Date d'inscription   Statut Membre Dernière intervention   -  
 Numa -
Bonjour,


Sous Excel 2003, avec une macro, je voudrais supprimer les slash dans une date.
Passer de 08/12/1978 à 08121978

J'ai saisi le code ci-dessous sous vba :

    ActiveCell.Select
    ActiveCell.Replace What:="/", Replacement:=""
    
    Selection.NumberFormat = "@"


Mais quand je lance la macro j'obtiens le résultat suivant :
08/12/1978 -> 1281978

Excel inverse les "jours" et les mois". (problème de format de date anglais je suppose...)
Quelqu'un saurait-il m'expliquer comment éviter cette inversion ?

Accessoirement, comment faire pour qu'il ne supprime pas le "0" avant le "8" ?
(j'arriverai m'arranger pour le replacer si le "8" repasse en première position dans la cellule, mais s'il y a un moyen de le faire simplement...)

Désolée si cette question a déjà été posée, j'ai cherché pendant quelques jours, mais rien trouvé.

Merci d'avance pour votre aide :-)
N.

6 réponses

m@rina Messages postés 23816 Date d'inscription   Statut Contributeur Dernière intervention   11 462
 
Bonjour

C'est juste une question de format, il n'y a pas à supprimer les /.

Essaie ceci :

ActiveCell.NumberFormat = "ddmmyyyy"


m@rina
0
nabhalia Messages postés 23 Date d'inscription   Statut Membre Dernière intervention  
 
Bonjour,

Je viens de tester,
Si je mets ce format, la cellule reste au format date, ce que je voudrais éviter.

Je dois reprendre le contenu de cette cellule dans une autre, et Excel me remet alors les slash...
0
Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 135
 
Salut,

Regardes si c'est ce que tu cherches

ActiveCell.Select
ActiveCell.Replace What:="/", Replacement:=""
Selection.NumberFormat = "00000000"
0
nabhalia Messages postés 23 Date d'inscription   Statut Membre Dernière intervention  
 
Bonjour,

Ça ne fonctionne pas non plus avec le format "00000000" ,

mais j'ai réussi à contourner le problème en insérant du texte dans la cellule, puis en supprimant les slashs.

Au cas où, si quelqu'un a une solution plus directe, ça m'intéresserait de la connaître.

Merci pour votre aide.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 135
 
Re,

Regarde si ce code te convient

Selection.FormulaR1C1 = "'" & ActiveCell
Selection.Replace What:="/", Replacement:=""
0
Numa
 
Autre solution : créer un fichier de type note pad / Bloc-Notes (donc format .txt) copier les dates et les coller dans le fichier .txt les / disparaissent
Copier les valeurs et les coller dans Excel en ayant au préalable configurer les cellules au format Texte (pour éviter de perdre les "0" en début de date)
0