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

VBA Discussion :

XML, VBA et encodage


Sujet :

VBA

  1. #1
    Candidat au Club
    Inscrit en
    Avril 2005
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 5
    Points : 3
    Points
    3
    Par défaut XML, VBA et encodage
    Bonjour,
    Je cree un XML a partir d'une feuille excel en VBA.
    En voici un echantillon
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
           Set fso = New Scripting.FileSystemObject
           Set tf2 = fso.CreateTextFile("c:\text.xml", true, true)
           tf.writeline ("<?xml version='1.0' encoding='UTF-8'?>")
           tf.writeline ("<myRoot>")
           tf.writeline ("<DataEntry>")
           tf.writeline ("<editor>c'est moi l'éditeur</editor>")     
           tf.writeline ("</DataEntry>")
           tf.writeline ("</myRoot>")
           tf.Close
    Le fichier se cree bien, pas de souci de ce cote. Mais lorsque j'essaye de le parser dans mon application ou juste de le charger dans un document MSXML via
    Dim xml As New MSXML2.DOMDocument
    xml.Load ("c:\text.xml")
    Cela ne fonctionne pas.

    Apres de multiples tests, je me suis rendu compte que cela est du a la presence des caracteres speciaux é, ' .
    Pour que le fichier soit exploitable, il faut "juste" que je l'ouvre dans un editeur XML genre XMLSpy ou oxygen et que je le sauve pour que tout soit dans le bon format ce qui n'est pas vraiment commode...

    Par exemple, mon XML ressemblant a ca dans UltraEdit:
    Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <?xml version='1.0' encoding='UTF-8'?>
    <myRoot>
    	<DataEntry>
    	     <editor>c'est moi l'éditeur</editor>
    	</DataEntry>
    </myRoot>
    devient ceci dans UE apres avoir ete sauve dans XMLSpy:
    Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <?xml version='1.0' encoding='UTF-8'?>
    <myRoot>
    	<DataEntry>
    	     <editor>c'est moi l'éditeur</editor>
    	</DataEntry>
    </myRoot>

    Il semble que les caracteres dans le fichier XML fraichement cree meme si visuellement, cela semble correct, ne sont pas valides pour etre dans un XML...

    Connaissez vous un moyen de faire par la programmation VBA que ce fichier texte que je cree soit dans le bon encodage pour pouvoir ensuite l'exploiter dans des parser XSL, le charger dans un objet XML?

    Merci d'avance de votre aide, je commence a devenir fou..

    Sylvain

  2. #2
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Août 2005
    Messages
    3 317
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2005
    Messages : 3 317
    Points : 20 144
    Points
    20 144
    Par défaut
    bonsoir

    j'espere que cet exemple Excel pourra t'aider :
    http://excel.developpez.com/faq/?pag...LplageCellules


    bonne soirée
    michel

  3. #3
    Candidat au Club
    Inscrit en
    Avril 2005
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 5
    Points : 3
    Points
    3
    Par défaut
    Merci de votre reponse

    Le probleme est que l'application est deja developpe selon le modele FSO, write line dont je vous ai parle. Je ne me vois pas tout redevelopper en suivant la logique MSXML meme si cela semble performant.

    Comment serai t'il possible de forcer l'encodage afin que les caracteres speciaux soient correctement gere et ne soient exploitables directement via la methode load de MSXML2.DOMDocument ou des editeurs XML.

    Merci d'avance

    Sylvain

Discussions similaires

  1. Flash + XML : problème d'encodage
    Par Gilles F dans le forum Flash
    Réponses: 5
    Dernier message: 08/10/2007, 23h39
  2. [XML-PHP] Problème encodage
    Par Erebe dans le forum XML/XSL et SOAP
    Réponses: 2
    Dernier message: 21/09/2007, 09h03
  3. [xl2007] Ruban xml + VBA
    Par jpo dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 31/08/2007, 14h55
  4. Flash / XML / PHP et encodage !
    Par ahseed dans le forum Flash
    Réponses: 4
    Dernier message: 16/05/2007, 10h11
  5. [XML] problème d'encodage caractère €
    Par #CR-7 dans le forum XML/XSL et SOAP
    Réponses: 4
    Dernier message: 11/01/2007, 10h45

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