Macro

Résolu
Bonjour,
Quelle macro permet de faire passer le texte en A1 de "280101" à "28/01/01"?
--
Après Open Office essayez Opin Offece :P
Configuration: ...

10 réponses

  1. Si tu parles de mettre le format de cellule en date ça ne fonctionne pas car 280101 ne correspond pas au28/01/01
    1. Modérateur
      Salut,
      Formater en date nous donne, pour 280101, 20/11/2666, (sauf si tu formates ta cellule avant saisie...) je doute que ce soit ce que veux farfadet...
      Par formule déjà (le temps que je regarde une macro...) :
      =GAUCHE(A1;2) & "/" & STXT(A1;2;2) & "/" & DROITE(A1;2)
      1. Modérateur
        Re-
        Macro 1 : ne permet pas les calculs entre dates :

        Range("A1") = Left(Range("A1"), 2) & "/" & Mid(Range("A1"), 2, 2) & "/" & Right(Range("A1"), 2)


        Macro 2 : permets les calculs :

        Dim jour As String, annee As String
        Dim datedujour As String, mois As String
        jour = Left(Range("A1"), 2)
        mois = Mid(Range("A1"), 3, 2)
        annee = Right(Range("A1"), 2)
        datedujour = jour & "/" & mois & "/" & annee
        [A1] = CDate(datedujour)


        @ + Farfa

        EDIT : je te trouve très impatient aujourd'hui...
        1. Bonjour,
          Vous pouvez tirez la formule de pijaku sur le nombre de ligne nécessaire !
          La macro n'est vraiment pas nécessaire !
          1. Modérateur
            SAlut Le pingou,
            Tout à fait d'accord avec toi. Le plus simple reste la solution avec formule. Cependant connaissant farfadet, il doit vouloir intégrer ce code à une macro de trois cent lignes, ou à un moment donné il a besoin de convertir A1...
            Il nous confirmera (ou infirmera) cela à son retour.
            Bonne journée
          2. @pijakuhé hé hé pijaku! En plein dans le mille ou presque.

            Ca marche nickel (jai du adapter vu la macro créée auparavant).

            Merci beaucoup
          3. @pijakuBonjour pijaku,
            Désolé j'ai pas vue les postes.
            Il y ajuste une petite correction de votre formule pour le STXT(A1;3;2), le n° départ est le 3 et non le 2
            sinon on a 280101 ==> 28/80/01
        2. Modérateur
          Bien sur... Merci de votre vigilance...
          Et idem pour la macro...

          Range("A1") = Left(Range("A1"), 2) & "/" & Mid(Range("A1"), 3, 2) & "/" & Right(Range("A1"), 2)
          
          Dim jour As String, annee As String
          Dim datedujour As String, mois As String
          jour = Left(Range("A1"), 2)
          mois = Mid(Range("A1"), 3, 2)
          annee = Right(Range("A1"), 2)
          datedujour = jour & "/" & mois & "/" & annee
          [A1] = CDate(datedujour)
          --
          Cordialement, et ..... Bonne Année, mes meilleurs voeux pour 2010!!!
          -- Tout problème à sa solution. S'il n'y a pas de solution, ou est le problème? --