[英]Embed XML into Excel worksheet
我确实有一个XML文件,其中包含几个计算出的值以及一系列项目,例如:
<?xml version="1.0" encoding="utf-8"?>
<XmlContent>
<Elements>
<CreationDate>...</CreationDate>
<Filename>....</Filename>
</Elements>
<PersonItems>
<PersonItem>
<FirstName>...</FirstName>
<LastName>...</LastName>
<Speed>...</Speed>
</PersonItem>
<PersonItem>
<FirstName>...</FirstName>
<LastName>...</LastName>
<Speed>...</Speed>
</PersonItem>
[...]
</PersonItems>
</XmlContent>
现在,应该使用Excel 2007 OpenXmlFormat将值显示在Excel工作表中。 计算值应该映射到工作表内的特定单元格,而PersonItems
应该绑定到同一工作表内的表。
是否可以通过使用c#Package API作为CustomXmlPart
将XML文件嵌入到工作表包中并将值绑定到适当的字段?
我在Channel9上找到了一个示例,其中Matthew Scott通过使用Word Content Control Toolkit与Word 2007进行了类似的操作。 但是,这仅适用于Word。
Excel有类似的东西吗?
还是有更好的方法来解决此任务?
好吧,在研究和研究XML映射之后,我得出的结论是,没有一种“简单”的方法可以实现我渴望做的事情。
在Excel应用程序中导入XML内容时,Excel将创建XML映射定义并将其存储在Package中。 XML内容本身将通过使用映射定义进行拆分,并合并到Excel文件的内容中。 这意味着XML文件本身在导入后即消失,无法再使用。
但是,如您在上面的链接中所见,Word 2007+可能会出现这种情况。
也许这些信息对像我这样有类似任务的人很有帮助。
最简单的方法是解析xml文件(SAX,DOM),获取相应的属性和值,然后将其写入excel文件。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.