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 :

Conversion d'un fichier encodé en ANSI en UTF-8 [XL-2010]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Technicien
    Inscrit en
    Février 2016
    Messages
    63
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Technicien

    Informations forums :
    Inscription : Février 2016
    Messages : 63
    Par défaut Conversion d'un fichier encodé en ANSI en UTF-8
    Bonjour à tous,

    Je chercher comment modifier l'encodage d’un fichier texte.
    Je m’explique, à l’aide d’une macro VBA Excel je crée un fichier texte quelconque et je viens écrire dedans.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Sub Macro1()
     
    Chemin = "D:\"
    Fichier = "Fichier.ext"
     
    Open Chemin & Fichier For Output As #1
    Print #1, "Divers…"
    Close #1
     
    End Sub
    Mon problème est que ce fichier est encodé en ANSI alors que je le voudrais en UTF-8.
    Comment faire ?

    Merci pour votre aide…

  2. #2

  3. #3
    Expert éminent
    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
    Par défaut



    Salut Robert !

    C'est déjà résolu dans sa discussion d'origine dans le forum Excel via ADODB.Stream comme je l'avais indiqué …



    _________________________________________________________________________________________________________
    Je suis Paris, Charlie, Bruxelles, …

  4. #4
    Invité
    Invité(e)
    Par défaut
    Bonjour Marc,
    Ok c'est pas grave merci!

  5. #5
    Membre confirmé
    Homme Profil pro
    Technicien
    Inscrit en
    Février 2016
    Messages
    63
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Technicien

    Informations forums :
    Inscription : Février 2016
    Messages : 63
    Par défaut SAUT DE LIGNE
    Bonjour à tous,

    Effectivement cela marche avec ADODB.Stream mais j'ai un petit problème avec les sauts de ligne.

    Lorsque je code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    adbStream.WrintText "bla bla"
    adbStream.WrintText "bla bla"
    Tout est à la suite dans la même ligne dans le fichier créé.
    Si j'ajoute un
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    adbStream.WrintText chr$(10)
    le saut est visible dans NOTEPAD++ mais pas avec BLOC-NOTE.

    Le fichier que j'ai comme référence possède des sauts de ligne visibles par les 2 logiciel NOTEPAD++ et BLOC-NOTE.
    Comment faire pour recréer ces sauts de ligne ?

    Merci de votre aide.

  6. #6
    Membre Expert
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juillet 2004
    Messages
    2 725
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 725
    Par défaut
    Heu.....
    Tu nous expliques pourquoi tu n'as pas gardé ton sujet d'origine !
    http://www.developpez.net/forums/d15...-ansi-utf-8-a/

    NdlM : fil supprimé. Contenu repris dans le commentaire #10.

    Pour info soit dit en passant un retour à la ligne complet c'est Chr(13)&Chr(10) et MS à inclus une super constante qui s'appel vbNewLine ou encore vbCrLf....

  7. #7
    Membre confirmé
    Homme Profil pro
    Technicien
    Inscrit en
    Février 2016
    Messages
    63
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Technicien

    Informations forums :
    Inscription : Février 2016
    Messages : 63
    Par défaut
    Parce que le sujet n'était pas dans la bonne rubrique.

  8. #8
    Membre Expert
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juillet 2004
    Messages
    2 725
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 725
    Par défaut
    Ce n'était pas à ça prêt....
    Bref tu as eu ta réponse pour le retour à la ligne maintenant.

  9. #9
    Membre confirmé
    Homme Profil pro
    Technicien
    Inscrit en
    Février 2016
    Messages
    63
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Technicien

    Informations forums :
    Inscription : Février 2016
    Messages : 63
    Par défaut
    En fait je me suis mal exprimé, ce n'est pas "un saut de ligne" mais "une mise à la ligne".
    J'ai fait un test et de toute façon
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    adbStream.WriteText Chr$(10) & Chr(13)
    me donne le même résultat vu de NOTEPAD.

    Je ne sais pas utilisé les autres commandes que vous m'avez indiquées, pouvez-vous me donner la ligne de code complète ? Merci.

  10. #10
    Membre Expert
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juillet 2004
    Messages
    2 725
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 725
    Par défaut
    Si tu ne lisait pas en diagonale......

    J'ai indiqué :
    Citation Envoyé par cerede2000 Voir le message
    Pour info soit dit en passant un retour à la ligne complet c'est Chr(13)&Chr(10) et MS à inclus une super constante qui s'appel vbNewLine ou encore vbCrLf....
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Sub tt()
        Dim adbStream As Object
        Set adbStream = CreateObject("ADODB.Stream")
        adbStream.Type = 2
        adbStream.Charset = "utf-8"
        adbStream.Open
        adbStream.WriteText "bla bla bla bla" & vbNewLine & "totototott totototo"
        adbStream.SaveToFile "C:\Temp\MonFichier.txt", 2
    End Sub
    Ceci fonctionne comme tu le souhaites.

  11. #11
    Membre confirmé
    Homme Profil pro
    Technicien
    Inscrit en
    Février 2016
    Messages
    63
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Technicien

    Informations forums :
    Inscription : Février 2016
    Messages : 63
    Par défaut
    C'est nickel !!!
    Merci...

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

Discussions similaires

  1. [WD17] Conversion d'un fichier plat encoder en UTF-16LE vers UTF-8
    Par nokwih dans le forum WinDev
    Réponses: 1
    Dernier message: 21/05/2013, 10h47
  2. [Débutant] Conversion d'un fichier texte ANSI en UNICODE
    Par pierrotm777 dans le forum Framework .NET
    Réponses: 2
    Dernier message: 03/04/2012, 13h42
  3. [JAR]conversion projet en fichier JAR
    Par alain34270 dans le forum Général Java
    Réponses: 3
    Dernier message: 08/06/2005, 15h29
  4. Conversion d'un fichier dos vers windows ?
    Par elitost dans le forum Windows
    Réponses: 4
    Dernier message: 10/02/2005, 17h42

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