2013-03-20 96 views
1

我確實有它包含的項目,如清單沿着幾個計算值的XML文件:嵌入XML轉換成Excel工作表

<?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的特定單元格,並將其綁定到同一工作表中的表格。

有沒有一種方法嵌入XML文件到工作表包裝和使用C#包API作爲CustomXmlPart值綁定到相應的字段?

我在Channel9上找到了一個例子,其中Matthew Scott通過使用Word Content Control Toolkit與Word 2007做了類似的事情。但是,這隻適用於Word。

Excel是否有類似的東西?

或者還有更好的方法來解決這個任務嗎?

回答

2

那麼,經過研究和XML映射後,我得出結論,沒有「簡單」的方法來實現我渴望做的事情。

在Excel應用程序內導入XML內容時,Excel會創建一個XML映射定義並將其存儲在Package中。 XML內容本身將通過使用映射定義進行拆分併合併到Excel文件的內容中。 這意味着,XML文件本身在導入後立即消失,不能再使用。

但是,您可以在上面的鏈接中看到,故意使用Word 2007+。

也許這個信息對任何像我這樣的人都有幫助。

-2

最簡單的方法是解析XML文件(SAX,DOM),獲取相應的屬性和值,然後將其寫入Excel文件。