VBA - Supprimer les slash dans une date

Résolu
nabhalia Messages postés 23 Statut Membre -  
 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

  1. m@rina Messages postés 27507 Date d'inscription   Statut Modérateur Dernière intervention   11 562
     
    Bonjour

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

    Essaie ceci :

    ActiveCell.NumberFormat = "ddmmyyyy"


    m@rina
    0
  2. nabhalia Messages postés 23 Statut Membre
     
    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
  3. Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 147
     
    Salut,

    Regardes si c'est ce que tu cherches

    ActiveCell.Select
    ActiveCell.Replace What:="/", Replacement:=""
    Selection.NumberFormat = "00000000"
    0
  4. nabhalia Messages postés 23 Statut Membre
     
    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
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

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

    Regarde si ce code te convient

    Selection.FormulaR1C1 = "'" & ActiveCell
    Selection.Replace What:="/", Replacement:=""
    0
  7. 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