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 :

Import et conversion fichier texte avec séparateur dans un autre jeu de caractère [XL-2010]


Sujet :

Macros et VBA Excel

  1. #1
    Membre averti
    Inscrit en
    Août 2009
    Messages
    817
    Détails du profil
    Informations forums :
    Inscription : Août 2009
    Messages : 817
    Points : 314
    Points
    314
    Par défaut Import et conversion fichier texte avec séparateur dans un autre jeu de caractère
    Bonjour,

    J'ai déjà importé et converti des tas de fichiers texte.
    là je suis confronté à un problème de jeu de caractère.

    Le séparateur est un [;] après vérification le code [;] me renvoie 63 au lieu de 59 pour un [;] tapé à mon clavier.
    Donc je dois être dans un jeu de caractères différent

    J'ai fait un enregistrement macro pour réouvir ce fichier, mais la macro générée ne tient pas compte du bon jeu de caractère, alors que j'avais bien collé la bonne valeur lors de l'enregistrement de la macro.
    Du coup il ne me fais pas la conversion à l'ouverture.

    de plus avec ce mode d'enregistrement tous les champs sont figés dans la partie qualification du type de données de chaque colonne.
    Existe-t-il une autre méthodes plus universelle ?
    Sinon il me reste l'ouverture chercher remplacer [;](63) par [;](59) puis convertir.

    Merci pour vos conseils
    Denis

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
     Workbooks.OpenText Filename:="C:\Users\Denis_67\Desktop\test_sp01.txt", Origin _
            :=xlWindows, StartRow:=1, DataType:=xlDelimited, TextQualifier:= _
            xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, Semicolon:=False, _
            Comma:=False, Space:=False, Other:=True, OtherChar:=";", FieldInfo:= _
            Array(Array(1, 1), 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), Array(22, 1), Array(23, 1), Array(24, 1), Array(25, 1), Array(26, 1), Array( _
            27, 1), Array(28, 1), Array(29, 1), Array(30, 1), Array(31, 1), Array(32, 1), Array(33, 1), _
            Array(34, 1), Array(35, 1), Array(36, 1), Array(37, 1), Array(38, 1), Array(39, 1), Array( _
            40, 1), Array(41, 1), Array(42, 1), Array(43, 1), Array(44, 1), Array(45, 1), Array(46, 1), _
            Array(47, 1), Array(48, 1), Array(49, 1)), TrailingMinusNumbers:=True

  2. #2
    Expert confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2013
    Messages
    3 617
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Alimentation

    Informations forums :
    Inscription : Mai 2013
    Messages : 3 617
    Points : 5 912
    Points
    5 912
    Par défaut
    Bonjour,

    Avec les icônes qui s'affichent, c'est difficile de voir quel est le séparateur dont tu parles...

    Tu écris ceci
    Semicolon:=False
    puis
    Other:=True, OtherChar:=";"
    Y a-t-il une raison particulière ?
    MPi²

  3. #3
    Membre averti
    Inscrit en
    Août 2009
    Messages
    817
    Détails du profil
    Informations forums :
    Inscription : Août 2009
    Messages : 817
    Points : 314
    Points
    314
    Par défaut .... vive les émoticones !!!!!!!
    Bonjours,

    Voilà ce que c'est quand on ne préviualise pas son message ...

    Je remplace les par [;] c'est bien du caractère point-virgule dont il s'agit.


    Denis

  4. #4
    Membre averti
    Inscrit en
    Août 2009
    Messages
    817
    Détails du profil
    Informations forums :
    Inscription : Août 2009
    Messages : 817
    Points : 314
    Points
    314
    Par défaut
    Bonsoir,
    Désolé ce problème est toujours actif.

    Ne pas tenir compte des icones qui se sont générées par erreur.

    donc je répète mon problème lorsque j'importe un fichier texte le point-virgule n'est pas reconnu comme tel.
    J'ai essayé quasiment tous les jeux de caractères latin europe proposés dans l'import mais je me retrouve toujours avec un autre caractère.
    Le séparateur est un [;] après vérification le code [;] me renvoie 63 au lieu de 59 pour un [;] tapé à mon clavier.

    D'autres idées ?
    Merci
    Denis

  5. #5
    Expert confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2013
    Messages
    3 617
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Alimentation

    Informations forums :
    Inscription : Mai 2013
    Messages : 3 617
    Points : 5 912
    Points
    5 912
    Par défaut
    Quand tu ouvres ton fichier dans le bloc-note, tu vois des ";" ?
    Si oui, peut-être essayer de l'ouvrir avec Notepad++
    Il n'est pas disponible par défaut; il faut le télécharger et l'installer, mais c'est un bon outil à posséder...
    MPi²

  6. #6
    Membre averti
    Inscrit en
    Août 2009
    Messages
    817
    Détails du profil
    Informations forums :
    Inscription : Août 2009
    Messages : 817
    Points : 314
    Points
    314
    Par défaut
    Bonjour Parmi,

    Perso j'utilise PSpad editor, où je visualise des ;, demain au boulot, je vais me mettre en mode hexa pour voir le code réel du caractère.
    Merci pour l'idée.
    à suivre.
    Denis

  7. #7
    Expert éminent sénior
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Points : 18 677
    Points
    18 677
    Par défaut



    Bonjour,

    visible en VBA via sa fonction AscW.

    Sujet déjà traité dans une discussion de ce forum …



    __________________________________________________________________________________________________
    Je suis Charlie - Je suis Bardo
    C'est parce que la vitesse de la lumière est plus rapide que celle du son que tant de gens paressent brillants avant d'avoir l'air con ! (Thomas Boishardy)

  8. #8
    Membre averti
    Inscrit en
    Août 2009
    Messages
    817
    Détails du profil
    Informations forums :
    Inscription : Août 2009
    Messages : 817
    Points : 314
    Points
    314
    Par défaut
    Avec notepad++ j'ai récupéré le set de caracteres UTF-8 without BOM ce que PSpad ne montre pas !

    Bref en tous cas, j'ai demandé au programmeur de revoir son format d'export.

    Merci

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

Discussions similaires

  1. [XL-2000] Importation d'un Fichier texte en BRUT dans une feuille Excel
    Par Hankow dans le forum Macros et VBA Excel
    Réponses: 20
    Dernier message: 31/03/2015, 10h46
  2. [2008] Découper un fichier texte avec séparateur ";"
    Par Daniel MOREAU dans le forum MS SQL Server
    Réponses: 6
    Dernier message: 10/04/2014, 17h17
  3. Génération de fichier texte avec séparateur
    Par siro1 dans le forum Langage
    Réponses: 7
    Dernier message: 07/03/2012, 17h31
  4. Réponses: 3
    Dernier message: 07/04/2011, 09h06
  5. Réponses: 1
    Dernier message: 24/11/2004, 16h54

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