1

私はExcelファイルをエクスポートしていてxmlxsltこのエラーが発生します..このファイルを開こうとすると...これはログファイルです

XML ERROR in Table
REASON: Bad Value
FILE:   C:\Documents and Settings\mayankp\Desktop\PrintCheckList.xls
GROUP:  Row
TAG:    Cell
ATTRIB: Index
VALUE:  0

XML ERROR in Table
REASON: Bad Value
FILE:   C:\Documents and Settings\mayankp\Desktop\PrintCheckList.xls
GROUP:  Row
TAG:    Cell
ATTRIB: Index
VALUE:  1

XML ERROR in Table
REASON: Bad Value
FILE:   C:\Documents and Settings\mayankp\Desktop\PrintCheckList.xls
GROUP:  Row
TAG:    Cell
ATTRIB: Index
VALUE:  2

XML ERROR in Table
REASON: Bad Value
FILE:   C:\Documents and Settings\mayankp\Desktop\PrintCheckList.xls
GROUP:  Row
TAG:    Cell
ATTRIB: Index
VALUE:  0

XML ERROR in Table
REASON: Bad Value
FILE:   C:\Documents and Settings\mayankp\Desktop\PrintCheckList.xls
GROUP:  Row
TAG:    Cell
ATTRIB: Index
VALUE:  1

XML ERROR in Table
REASON: Bad Value
FILE:   C:\Documents and Settings\mayankp\Desktop\PrintCheckList.xls
GROUP:  Row
TAG:    Cell
ATTRIB: Index
VALUE:  2

どんな助けでも大歓迎です。

編集:ここで完全なXMLを参照してください

4

1 に答える 1

6

XML サンプルは完全ではありませんが、それを見ると、問題は 2 行目にある可能性があります

     <Row ss:Height="15.75" ss:StyleID="s62">
        <Cell ss:MergeDown="2" ss:StyleID="m57097196">
           <Data ss:Type="String">S/N</Data>
        </Cell>
        <Cell ss:MergeDown="2" ss:StyleID="m57097216">
           <Data ss:Type="String">PRIORITY</Data>
        </Cell>
        <Cell ss:MergeDown="2" ss:StyleID="m57097076">
           <Data ss:Type="String">ITEM </Data>
        </Cell>
        <Cell ss:MergeAcross="2" ss:StyleID="m57097176">
           <Data ss:Type="String">AUDIT TYPE </Data>
        </Cell>
        <Cell ss:MergeDown="2" ss:StyleID="m57097236">
           <Data ss:Type="String">STATUS </Data>
        </Cell>
        <Cell ss:MergeDown="2" ss:StyleID="m57097280">
           <Data ss:Type="String">REFERENCE </Data>
        </Cell>
        <Cell ss:MergeDown="2" ss:StyleID="m57097056">
           <Data ss:Type="String">AUDIT REMARKS</Data>
        </Cell>
     </Row>

特に、ss:MergeDownおよびss:MergeAcross属性。Microsoft Xml スプレッドシート リファレンスを見ると、ss :MergeAcrossについて次のように表示されます。

マージする現在のセルから横方向 (右から左モードでない場合は右方向) に隣接するセルの数を指定します。前述のように、インデックスは重複してはなりません。重複が存在する場合、動作は規定されておらず、XML スプレッドシート ドキュメントは無効であると見なされます。

したがって、次のセルが列 5 に配置されており、これが列 4 のセルと重なり、次の 2 つのセルにまたがっているため、エラーが発生する可能性があります。5 番目のセルのインデックスを列 7 に明示的に設定する必要があります (5 番目のセルで ss:Index="7" を使用していることに注意してください)。

     <Row ss:Height="15.75" ss:StyleID="s62">
        <Cell ss:MergeDown="2" ss:StyleID="m57097196">
           <Data ss:Type="String">S/N</Data>
        </Cell>
        <Cell ss:MergeDown="2" ss:StyleID="m57097216">
           <Data ss:Type="String">PRIORITY</Data>
        </Cell>
        <Cell ss:MergeDown="2" ss:StyleID="m57097076">
           <Data ss:Type="String">ITEM </Data>
        </Cell>
        <Cell ss:MergeAcross="2" ss:StyleID="m57097176">
           <Data ss:Type="String">AUDIT TYPE </Data>
        </Cell>
        <Cell ss:Index="7" ss:MergeDown="2" ss:StyleID="m57097236">
           <Data ss:Type="String">STATUS </Data>
        </Cell>
        <Cell ss:MergeDown="2" ss:StyleID="m57097280">
           <Data ss:Type="String">REFERENCE </Data>
        </Cell>
        <Cell ss:MergeDown="2" ss:StyleID="m57097056">
           <Data ss:Type="String">AUDIT REMARKS</Data>
        </Cell>
     </Row>

さらに、セルに対して 2 に設定されたss:Mergedownの使用により、これは次の 2 行が使用されることを意味します。したがって、重複しないように、xml の次の Row 要素を変更して、インデックスを明示的に 5 に設定する必要があります。

     <Row ss:Index="5" ss:Height="30">
        <Cell ss:StyleID="s76">
           <Data ss:Type="String">1</Data>
        </Cell>

これで問題が解決するはずです。

于 2012-08-22T13:03:15.107 に答える