我会尝试以最好的方式解释我的问题(对不起我的英语)。
我有一个以这种方式构建的excel文件。
Column1 Column2 Column3 ... ColumnN 1马里奥路易吉 2桃子瓦里奥 。 。 。
我有一个XML Schema(.xds)来映射该电子表格。 架构是:
<root id="x">
<Column1> *something*</Column1>
<Column2> *something*</Column2>
*...and so on...*
</root>
当我映射excel文件时,我可以只将一个单元格转换为一个xml元素。因此,我可以将Column1的单元格与元素Column1映射到XML Schema。我希望这很清楚。 但我想为XML Schema中的元素Column1映射MULTIPLE单元格。 换句话说,当我从Excel导出XML文件时(每行一个),我想重复多次。
我应该期待映射多个单元格
<root id="1">
<Column1> 1</Column1>
<Column2> Mario</Column2>
*...and so on...*
</root>
<root id="2">
<Column1> 1</Column1>
<Column2> Peach</Column2>
*...and so on...*
</root>
我得到的映射只有一个单元格
<root id="1">
<Column1> 1</Column1>
<Column2> Mario</Column2>
*...and so on...*
</root>
我希望我的问题很清楚:如何为我的XML Scheme的一个元素映射多个单元格?
感谢。
答案 0 :(得分:0)
尝试将XLS文件转换为CSV文件,然后使用python脚本,将CSV文件转换为XML文件。 请检查此代码CSV to XML
答案 1 :(得分:0)
或者你可以简单地用xml代码编写一个文本文件,然后用所需的扩展名保存它。例如
Dim fsT As Object
Set fsT = CreateObject("ADODB.Stream")
fsT.Type = 2 ' Specifies stream type - save text data.
fsT.Charset = "utf-8" ' Specifies charset For the source text data.
fsT.lineseparator = 10 ' Pushes enter when a line is finished
fsT.Open
fsT.WriteText <root id="1">, 1
fsT.WriteText <Column1> 1</Column1>, 1 ' you can substitute a Cell.Column to this "1"
fsT.WriteText <Column2> Mario</Column2>, 1 ' same here, you can give input by a cell for example
fsT.WriteText *...and so on...* , 1
fsT.WriteText </root>, 1
' Do it how many times you want then...
fsT.SaveToFile YourFileName, 2 ' Saves (and overwrites) data
fsT.Close
Set fsT = Nothing