2017-12-08 9 views
0

XSL変換からExcelファイルを作成できません。私が見つけたほとんどの質問とチュートリアルは、Excel 2003がまだまだ一般的だった7年前からのものなので、Excel 2010以降が可能かどうかはわかりません。XMLをExcel xlsに変換するXSLシート

これは私の変換です。セルにはXMLデータセットのデータがありますが、今はExcelで出力ファイルを正しく開くことができますが、これはできません。

<xsl:stylesheet version="1.0" 
xmlns="urn:schemas-microsoft-com:office:spreadsheet" 
xmlns:xsl="http://www.w3.org/1999/XSL/Transform" 
xmlns:msxsl="urn:schemas-microsoft-com:xslt" 
xmlns:user="urn:my-scripts" 
xmlns:o="urn:schemas-microsoft-com:office:office" 
xmlns:x="urn:schemas-microsoft-com:office:excel" 
xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet"> 

     <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/> 
     <xsl:template match="/"> 
      <xsl:processing-instruction name="mso-application">progid="Excel.Sheet"</xsl:processing-instruction> 
      <Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet" 
      xmlns:o="urn:schemas-microsoft-com:office:office" 
      xmlns:x="urn:schemas-microsoft-com:office:excel" 
      xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet" 
      xmlns:html="http://www.w3.org/TR/REC-html40"> 
       <Worksheet ss:Name="Sheet1"> 
        <Table x:FullColumns="1" x:FullRows="1" ss:DefaultRowHeight="15"> 
         <Row> 
          <Cell> 
           <Data ss:Type="String">a</Data> 
          </Cell> 
          <Cell> 
           <Data ss:Type="String">b</Data> 
          </Cell> 
         </Row> 
         <Row> 
          <Cell> 
           <Data ss:Type="String">c</Data> 
          </Cell> 
          <Cell> 
           <Data ss:Type="String">d</Data> 
          </Cell> 
         </Row> 
        </Table> 
       </Worksheet> 
      </Workbook> 
     </xsl:template> 
</xsl:stylesheet> 

私はXMLとして変換されたファイルを保存した場合、私は、「XMLスプレッドシート2003」としてExcelシートを保存する場合、私が得るものと類似している次の出力を取得。私は「.XLS」として出力を保存し、Excelで開くと

<?mso-application progid="Excel.Sheet"?> 
    <Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet" 
    xmlns:o="urn:schemas-microsoft-com:office:office" 
    xmlns:x="urn:schemas-microsoft-com:office:excel" 
    xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet" 
    xmlns:html="http://www.w3.org/TR/REC-html40"> 
     <Worksheet ss:Name="Sheet1"> 
    <Table x:FullColumns="1" x:FullRows="1" ss:DefaultRowHeight="15"> 
     <Row> 
     <Cell> 
      <Data ss:Type="String">a</Data> 
     </Cell> 
     <Cell> 
      <Data ss:Type="String">b</Data> 
     </Cell> 
     </Row> 
     <Row> 
     <Cell> 
      <Data ss:Type="String">c</Data> 
     </Cell> 
     <Cell> 
      <Data ss:Type="String">d</Data> 
     </Cell> 
     </Row> 
    </Table> 
    </Worksheet> 
</Workbook> 

は、しかし、それは次のようになります。私は、 『XMLスプレッドシート2003』としてExcelファイルを保存しようとした xls output file showing blank sheet with data in one cell

、それをExcelで再度開くと正しく開きますが、XMLをスタイルシートにコピーして変換すると、結果のxslファイルが上記のように開きます。

私は変換を行うためにpythonスクリプトを使用しています。これは他の変換でうまくいきますので、どのような問題がスタイルシートにあるのか分かりません。

編集:私はエクセル2010を使用してい

これは私がOK、私は上記のビューを取得]をクリックするとExcelは、XLSファイルを開く前に、私は取得していますエラーです。 xml to xls file

これは私が変換ファイルに「XLSX」の拡張子を与える場合、私は[OK]をクリックすると、私は、得るものです、何も開きません。 xml to xlsx file

xlsxファイルがエラーを表示するか、空白のExcelインスタンスを開く以外は、ファイル - >オープンルート経由で開くと同じ結果になります。

答えて

0
私はあなたの MS Officeで変換されたXML 2016[ファイル] - > [ファイルを開く)を開くしようとしてい

リブレオフィス5(ファイルからインサート>シート)で、それは次のように開かれたので、 A1 = "a"、B1 = "b"、A2 = "c"およびb2 = "d"。

はまた、「XLSX」(MSエクセル2007年から2013年)のように変換されたXMLファイルの拡張子の名前を変更しようと開いた後、あなたは以下のように結果を持っています:

enter image description here

+0

こんにちは、あなたの助けをありがとう私はそれを "xlsx"と命名しようとしましたが、私はまだ同じ問題を抱えています。 Excelでファイルを開いたときに表示されるエラーの質問に編集を追加しました。 – Baldeep

関連する問題