Bonjour,
j'utilise Excel 2003 SP2 sous winXP, et dans le VBA j'utilise la référence "Microsoft XML 3.0"
je cherche à fusionner 2 fichiers XML. Prenons par exemple ces 2 fichiers ci-dessous :
essai1.xml
Code :
- <?xml version="1.0" encoding="ISO-8859-1"?>
- <personnes>
- <personne age="49">
- <prenom>Georges</prenom>
- <etat>Marié</etat>
- <enfants>
- <enfant>
- <nom>Tiop</nom>
- </enfant>
- </enfants>
- </personne>
- <personne age="88">
- <nom>Godoh</nom>
- <prenom>Madeleine</prenom>
- <etat>Veuve</etat>
- <enfants>
- <enfant id="top">
- <nom>Godoh</nom>
- <prenom>Jean-Marie</prenom>
- </enfant>
- <enfant id="titi">
- <prenom>Etienne</prenom>
- </enfant>
- </enfants>
- </personne>
- </personnes>
|
essai2.xml
Code :
- <?xml version="1.0" encoding="ISO-8859-1"?>
- <personnes>
- <personne age="49">
- <nom>Baud</nom>
- <etat>Marié</etat>
- <enfants>
- <enfant>
- <prenom>Elisabeth</prenom>
- </enfant>
- </enfants>
- </personne>
- <personne age="88">
- <nom>Godoh</nom>
- <prenom>Madeleine</prenom>
- <etat>Veuve</etat>
- <enfants>
- <enfant id="top">
- <nom>Godoh</nom>
- </enfant>
- <enfant id="titi">
- <nom>Godoh</nom>
- <prenom>Etienne</prenom>
- </enfant>
- </enfants>
- </personne>
- </personnes>
|
Le résultat serait, si on prend essai1.xml comme référence (le rouge c'est ce qui est ajouté)
Code :
- <?xml version="1.0" encoding="ISO-8859-1"?>
- <personnes>
- <personne age="49">
- <nom>Baud</nom>
- <prenom>Georges</prenom>
- <etat>Marié</etat>
- <enfants>
- <enfant>
- <nom>Tiop</nom>
- <prenom>Elisabeth</prenom>
- </enfant>
- </enfants>
- </personne>
- <personne age="88">
- <nom>Godoh</nom>
- <prenom>Madeleine</prenom>
- <etat>Veuve</etat>
- <enfants>
- <enfant id="top">
- <nom>Godoh</nom>
- <prenom>Jean-Marie</prenom>
- </enfant>
- <enfant id="titi">
- <nom>Godoh</nom>
- <prenom>Etienne</prenom>
- </enfant>
- </enfants>
- </personne>
- </personnes>
|
Merci de vos aides
PS: en vrai, vous vous endoutez que essai1.xml et essai2.xml sont plus grands avec plus de nodes et de sous-nodes et de sous-sous-nodes et de sou.....
Message édité par mortelrdv le 19-10-2010 à 19:41:57