2012-03-29 76 views
4

我有一個包含其中每列是一個字段的客戶記錄一個巨大的Excel電子表格。有一個名爲Demographics的字段,其中包含客戶的調查結果,它完全採用XML格式。這是每一個客戶都有自己的性別一樣人口統計信息,婚姻狀況,收入,年齡等,這是在XML格式給出的調查結果。值得注意的是,整個XML就像是文字的,我不能用它來分析數據的電子表格單元格一大塊。提取數據字段到Excel

現在的問題是我想提取每個客戶的人口統計數據,並在同一個電子表格目前作爲領域,即,每個客戶都有一個年齡,性別,等等。我怎樣才能做到這一點?我試圖谷歌這一點,但似乎沒有人有同樣的問題。我正在使用Excel 2007/2010。

+0

您可以考慮編寫可能能夠在XML上運行XPAT查詢並將其放入某個單元格的宏嗎? – Kangkan 2012-03-29 12:20:20

+0

你看過編寫自己的XSLT樣式表嗎? XSLT樣式表是轉換XML文檔的標準,可以直接在樣式表中編寫XPATH語句來提取所需內容。 – markblandford 2012-03-29 13:30:18

回答

8

如果XML有一個扁平的結構是這樣的:

enter image description here

你可能只是轉換了「XML」列到一個XML文件,並重新導入到你的Excel工作表。要做到這一點,只是

副本& XML列粘貼到文本編輯器,

<customer><age>34</age><gender>m</gender></customer> 
<customer><age>38</age><gender>f</gender></customer> 

加開/關根元素,

<customers> 
    <customer><age>34</age><gender>m</gender></customer> 
    <customer><age>38</age><gender>f</gender></customer> 
</customers> 

,並保存爲customers.xml

現在。其重新導入到Excel中,使用XML - >ImportDeveloper Tools絲帶。基於「扁平化」的XML結構,Excel將用於單值創建列:

enter image description here

當然這會工作只有在XML結構是合適的,但如果這樣做,它的作品沒有寫宏或手動解析「XML」文本內容。

+0

謝謝你的解決方案!它工作出色! :-) – Joe 2012-03-30 08:00:52