Convertir une page CSV en Excel avec format date français

Bonjour,

J'ai une page Excel que j'importe d'un fichier CSV.

Je dois convertir les données afin de pourvoir les traiter.

Les dates du fichier source sont au format anglais (mm/jj/aaaa) et j'aimerais qu'elles soient converties au format français (jj/mm/aaaa).

La manipulation que je fais dans Excel est la suivante:

Sélection de la colonne A,

Données/Convertir

Etape 1: Délimité

Etape 2: Tabulation, Point-virgule

Etape 3: Date MJA

Puis Terminer.

Tout se passe bien lorsque je le fais manuellement.

Quand j'enregistre une macro en faisant cette manipulation, tout se passe bien quand je la lance, sauf les dates qui ne sont pas converties en format français. On dirait que l'étape 3 n'est pas enregistrée.

Voici le code généré après enregistrement de la macro:

 Columns("A:A").Select
    Selection.TextToColumns Destination:=Range("A1"), DataType:=xlDelimited, _
        TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _
        Semicolon:=True, Comma:=False, Space:=False, Other:=False, FieldInfo _
        :=Array(Array(1, 3), Array(2, 1), Array(3, 1), Array(4, 1), Array(5, 1), Array(6, 1), _
        Array(7, 1), Array(8, 1), Array(9, 1), Array(10, 1), Array(11, 1), Array(12, 1), Array(13, 1 _
        ), Array(14, 1), Array(15, 1), Array(16, 1), Array(17, 1), Array(18, 1), Array(19, 1), Array _
        (20, 1), Array(21, 1)), TrailingMinusNumbers:=True

Savez-vous où est enregistrée l'étape 3? Ou comment la faire apparaître dans le code?

Merci.

Cordialement,

Nat

Bonjour

Il est préférable, car une fois chargé, il est trop tard

  • soit de changer l'extension en txt puis d'ouvrir en précisant le type et format de chaque champ
  • soit de passer par l'onglet données, A partir de texte, qui permet également de préciser ces types/formats sur un CSV.
    Il faudra juste rompre la liaison ensuite

Les 2 sont automatisables par VBA

Bonjour

le format M/D/Y est indiqué par un 3 dans le parametre fieldinfo

FieldInfo _
        :=Array(Array(1, 3), Array(2, 1)

j'en deduis du code généré que seul le premier champ est une date pour lequel un format M/D/Y a été spécifié.

bonjour

donne au moins un fichier CSV pour pouvoir faire une macro qui va bien

A+

Maurice

Rechercher des sujets similaires à "convertir page csv format date francais"