Bonjour,
Je dois mettre en forme des données contenues dans une feuille Excel, vers un fichier XML.
Les solutions que je code moi-même ne me conviennent pas ainsi que le parseur freeware qui parse le csv en xml (csv2xml)
Je me tourne donc vers vous pour avoir des pistes, voici ce que pourrait être ma feuille Excel simplifiée :
Et voici le fichier xml escompté :
Actuellement ma solution la plus avancée, consiste à prendre l'export csv de la feuille Excel :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 <?xml version="1.0" encoding="UTF-8" standalone="yes"?> <N> <A> <A1 x="A1x" y="A1y" z="A1z"/> <A2 x="A2x" y="A2y" z="A2z"/> <A3 x="A3x" y="A3y" z="A3z"/> </A> <B> <B1 x="B1x" y="B1y" z="B1z"/> <BB> <BB1 x="BB1x" y="BB1y" z="BB1z"/> <BB2 x="BB2x" y="BB2y" z="BB2z"/> </BB> <B2 x="B2x" y="B2y" z="B2z"/> <B3 x="B3x" y="B3y" z="B3z"/> </B> </N>
Et en parsant j'obtient :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 N;x;y;z A;;; A1;A1x;A1y;A1z A2;A2x;A2y;A2z A3;A3x;A3y;A3z B;;; B1;B1x;B1y;B1z BB;;; BB1;BB1x;BB1y;BB1z BB2;BB2x;BB2y;BB2z B2;B2x;B2y;B2z B3;B3x;B3y;B3z
Donc je suis assez loin du compte,...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 <csv_data_records xsi:schemaLocation="mode3-schema.xsd C:\Documents and Settings\lhotte\Bureau\csv2xml\examples\extend\mode3-schema.xsd" source="C:\Fichier_intermediaire_2.csv"> <record N="A"/> <record N="A1" x="A1x" y="A1y" z="A1z"/> <record N="A2" x="A2x" y="A2y" z="A2z"/> <record N="A3" x="A3x" y="A3y" z="A3z"/> <record N="B"/> <record N="B1" x="B1x" y="B1y" z="B1z"/> <record N="BB"/> <record N="BB1" x="BB1x" y="BB1y" z="BB1z"/> <record N="BB2" x="BB2x" y="BB2y" z="BB2z"/> <record N="B2" x="B2x" y="B2y" z="B2z"/> <record N="B3" x="B3x" y="B3y" z="B3z"/> </csv_data_records> <!-- 11 records written -->
Quelle est la méthode à employer ? Avec Excel 2003 pro, il propose juste un mappage de XSD, cela ne suffit pas (peut être que 2007 est plus avancé ?). Toutes les solutions sont les bienvenues.
Merci
Partager