Macro

Résolu
Farfadet88 Messages postés 19 Date d'inscription   Statut Membre Dernière intervention   -  
pijaku Messages postés 13513 Date d'inscription   Statut Modérateur Dernière intervention   -
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. OOoForum Messages postés 3871 Date d'inscription   Statut Membre Dernière intervention   965
     
    Pas besoin de macro, il faut formater la cellule en date.

    1
  2. Farfadet88 Messages postés 19 Date d'inscription   Statut Membre Dernière intervention   1 402
     
    ???
    0
  3. Farfadet88 Messages postés 19 Date d'inscription   Statut Membre Dernière intervention   1 402
     
    Si tu parles de mettre le format de cellule en date ça ne fonctionne pas car 280101 ne correspond pas au28/01/01
    0
  4. pijaku Messages postés 13513 Date d'inscription   Statut Modérateur Dernière intervention   2 773
     
    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)
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. Farfadet88 Messages postés 19 Date d'inscription   Statut Membre Dernière intervention   1 402
     
    C'est pourquoi il me faut une macro
    0
  7. Farfadet88 Messages postés 19 Date d'inscription   Statut Membre Dernière intervention   1 402
     
    Alors? Pas de solution?
    0
  8. pijaku Messages postés 13513 Date d'inscription   Statut Modérateur Dernière intervention   2 773
     
    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...
    0
  9. Farfadet88 Messages postés 19 Date d'inscription   Statut Membre Dernière intervention   1 402
     
    Je teste et te dis si ça me va.

    Merci bien
    0
  10. Le Pingou Messages postés 12274 Date d'inscription   Statut Contributeur Dernière intervention   1 476
     
    Bonjour,
    Vous pouvez tirez la formule de pijaku sur le nombre de ligne nécessaire !
    La macro n'est vraiment pas nécessaire !
    0
    1. pijaku Messages postés 13513 Date d'inscription   Statut Modérateur Dernière intervention   2 773
       
      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
      0
      1. Farfadet88 Messages postés 19 Date d'inscription   Statut Membre Dernière intervention   1 402 > pijaku Messages postés 13513 Date d'inscription   Statut Modérateur Dernière intervention  
         
        hé hé hé pijaku! En plein dans le mille ou presque.

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

        Merci beaucoup
        0
      2. Le Pingou Messages postés 12274 Date d'inscription   Statut Contributeur Dernière intervention   1 476 > pijaku Messages postés 13513 Date d'inscription   Statut Modérateur Dernière intervention  
         
        Bonjour 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
        0
  11. pijaku Messages postés 13513 Date d'inscription   Statut Modérateur Dernière intervention   2 773
     
    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? --
    0