쿼리 (XML 형식)의 결과를 Excel 파일로 변환해야합니다. 쿼리-결과Excel 로의 XSLT 변환
예 :
<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet
version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns="urn:schemas-microsoft-com:office:spreadsheet"
xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet">
<xsl:output method="xml" indent="yes" encoding="UTF-8" />
<xsl:template match="/dbqueries">
<xsl:processing-instruction name="mso-application">
<xsl:text>progid="Excel.Sheet"</xsl:text>
</xsl:processing-instruction>
<Workbook>
<Styles>
<Style ss:ID="Default" ss:Name="Normal">
<Alignment ss:Vertical="Bottom" />
<Borders />
<Font />
<Interior />
<NumberFormat />
<Protection />
</Style>
<Style ss:ID="s21">
<Font ss:Size="22" ss:Bold="1" />
</Style>
<Style ss:ID="s22">
<Font ss:Size="14" ss:Bold="1" />
</Style>
<Style ss:ID="s23">
<Font ss:Size="12" ss:Bold="1" />
</Style>
<Style ss:ID="s24">
<Font ss:Size="10" ss:Bold="1" />
</Style>
</Styles>
<!-- Write each query -->
<xsl:for-each select="dbquery">
<Worksheet ss:Name="{@id}">
<Table>
<xsl:apply-templates select="//rows" mode="rows" />
</Table>
</Worksheet>
</xsl:for-each>
</Workbook>
</xsl:template>
<xsl:template match="//rows/row" mode="rows">
<xsl:variable name="x" select="position()" />
<Row ss:Index="{$x}">
<Cell ss:Index="1">
<Data ss:Type="String">
<xsl:value-of select="@id" />
</Data>
</Cell>
<Cell ss:Index="2">
<Data ss:Type="String">
<xsl:value-of select="@user" />
</Data>
</Cell>
</Row>
</xsl:template>
변환은 첫 번째 문자 변환시 손실되는 것을 제외하고 작동합니다
<?xml version="1.0" encoding="UTF-8"?>
<dbqueries>
<dbquery id="main">
<rows>
<row user="Me" user-id="1"/>
<row user="Myself" user-id="2"/>
<row user="I" user-id="3"/>
</rows>
</dbquery>
</dbqueries>
나는 다음과 같은 XSLT를 사용합니다.
은 아래를 참조하십시오 : 가능성이 뭐가 잘못
Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet" xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet">
을 것입니다?
* 첫 글자 *는 무엇입니까? 여는 괄호? XSLT 프로세서는 그렇게 할 수 없었습니다. 현재 및 원하는 출력을 표시하는 데 도움이 될 수 있습니다. – Parfait
통합 문서 앞에 붙는 "<"문자가 손실됩니다. – Soldierflup
어떤 XSLT 프로세서를 사용하고 있습니까? VBA의 MSXML? 잘란? 색슨 족? LibXSLT? – Parfait