0

私は通常のExcelテーブルをxmlに変換することに精通しています。これはほとんどフラットな構造です。私の問題は、私のテーブルにすべてのテーブル列にまたがるヘッダーがあることです。スキーマをセルにマップできません。月は、新しい行としてコストノードに自動的に追加されます。例を参照してください。

原価販売利益
1月1001505020 40202 月 1001505020 40203 月
1001505020 40
20





これは私が探しているXMLの結果です

<Sales>  
 <Period>  
   <Month>January</Month>  
   <Cost>100</Cost>  
   <Sell>150</Sell>  
   <Profit>50</Profit>  
  </Period>  
  <Period>  
   <Month>February</Month>  
   <Cost>100</Cost>  
   <Sell>150</Sell>  
   <Profit>50</Profit>  
  </Period>  
  <Period>  
   <Month>March</Month>  
   <Cost>100</Cost>  
   <Sell>150</Sell>  
   <Profit>50</Profit>  
 </Period>  
</Sales>

よろしくお願いします

4

1 に答える 1

0

ソース Excel シートをどの程度適応できるか、また XML ファイルを後処理できるかどうかはわかりません。

月を「持ち越す」ヘルパー列を挿入することもできますが、これは月全体を完全に取り除くのには役立ちません。

ここに画像の説明を入力

これにより、次の XML エクスポートが得られます。

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Sales xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

<Period>
    <Month>January</Month>
    <Cost>January</Cost>
</Period>
<Period>
    <Month>January</Month>
    <Cost>100</Cost>
    <Sell>150</Sell>
    <Profit>50</Profit>
</Period>
<Period>
    <Month>January</Month>
    <Cost>20</Cost>
    <Sell>40</Sell>
    <Profit>20</Profit>
</Period>
[...]
</Sales>

次に、このエクスポートを適切な XSLT で後処理して、月のみの行を削除できます。または、ヘルパー列をさらに使用して、月のみの行がすべて空になるようにします (つまり、2 か月の列と数値のみを持つコスト列を計算します)。しかし、これらの行を完全に削除する方法がわかりません。

HTH アンドレアス

于 2012-04-23T09:53:25.410 に答える