IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Problème de rédaction pour une conversion de dates [XL-2010]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Octobre 2015
    Messages
    48
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Chargé d'affaire
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2015
    Messages : 48
    Par défaut Problème de rédaction pour une conversion de dates
    Bonjour à tous,

    Ayant parcouru le forum à la recherche d'une solution à mon problème qui est de convertir des dates anglo-saxonnes en dates française, j'ai trouvé le moyen de le faire en passant par:
    Données>Convertir puis en changeant au format MJA à l'étape 3.
    Cela fonctionne lorsque j'effectue la manipulation manuellement. Seulement ce qui m'intéresse, c'est de le faire par macro sur un certain nombre de colonnes.
    Toutefois, lorsque j'utilise l'enregistreur de macro, excel m'écrit cela:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Sub Macro1()
    '
    ' Macro1 Macro
        Columns("G:G").Select
        Selection.TextToColumns Destination:=Range("G1"), DataType:=xlDelimited, _
            TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _
            Semicolon:=False, Comma:=False, Space:=False, Other:=False, FieldInfo _
            :=Array(1, 3), TrailingMinusNumbers:=True
    End Sub
    Le soucis, est que lorsque je lance la macro pour le faire sur une autre colonne, cela ne fonctionne pas. Pourriez-vous m'aider sur la syntaxe à adopter pour que cela fonctionne?

    Bien cordialement,
    Vbamateur.

  2. #2
    Expert confirmé Avatar de BENNASR
    Homme Profil pro
    Responsable comptable & financier
    Inscrit en
    Décembre 2013
    Messages
    2 974
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Responsable comptable & financier
    Secteur : Finance

    Informations forums :
    Inscription : Décembre 2013
    Messages : 2 974
    Par défaut
    bonjour
    modifier ça : Columns("G:G").Select
    par par exemple : Columns("G:K").Select
    je crois que ca va fonctionner
    amicalement

  3. #3
    Membre averti
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Octobre 2015
    Messages
    48
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Chargé d'affaire
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2015
    Messages : 48
    Par défaut
    Tout d'abord, merci pour ta réponse rapide.
    Le soucis c'est que l'on ne peut pas traiter plusieurs colonnes en une seule fois mais à la rigueur ce détail n'est pas si grave.
    Le vrai problème c'est que la conversion ne s'effectue pas quand je lance la macro à l'inverse de lorsque je le fais "à la main".

    Bien cordialement,
    Vbamateur.

  4. #4
    Invité
    Invité(e)
    Par défaut
    Bonsoir,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
     
    Sub test()
    DateFrGb Columns("G:G")
    DateFrGb Columns("F:F")
    For i=1 to 10
      DateFrGb Columns(i)
     
    Next
     
    End sub
     
    Sub DateFrGb(plage as range)
    '
    ' Macro1 Macro
     
        plage.TextToColumns Destination:=Range("G1"), DataType:=xlDelimited, _
            TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _
            Semicolon:=False, Comma:=False, Space:=False, Other:=False, FieldInfo _
            :=Array(1, 3), TrailingMinusNumbers:=True
    End Sub

  5. #5
    Expert confirmé

    Homme Profil pro
    Curieux
    Inscrit en
    Juillet 2012
    Messages
    5 169
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Curieux
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2012
    Messages : 5 169
    Billets dans le blog
    5
    Par défaut
    Bonjour,

    je dis peut être une bêtise (vous avez l'habitude), mais faut pas modifier ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    plage.TextToColumns Destination:=Range("G1"), DataType:=xlDelimited
    pour dynamiser "G1" en fonction de la colonne de plage, comme ça ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    plage.TextToColumns Destination:=plage.Cells(1,1), DataType:=xlDelimited

  6. #6
    Invité
    Invité(e)
    Par défaut
    Bonsoir Joe,
    Si tu as raison, un copier coller intempestif, merci pour la correction!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. problème sur une macro pour une conversion en VB6.3
    Par Zoldick dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 06/06/2008, 14h41
  2. Réponses: 3
    Dernier message: 06/12/2006, 10h01
  3. [Smarty] Problème de header pour une redirection de page
    Par soda_o_rat dans le forum Bibliothèques et frameworks
    Réponses: 2
    Dernier message: 16/08/2006, 09h58
  4. [MySQL] Problème de tri pour une application
    Par nanor21 dans le forum PHP & Base de données
    Réponses: 23
    Dernier message: 11/05/2006, 19h08
  5. Problème de contrainte sur une partie de date (l'année)
    Par shefla dans le forum PostgreSQL
    Réponses: 3
    Dernier message: 11/04/2006, 21h50

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo