Connecting Tech Pros Worldwide Help | Site Map

To create xsl with multiple worksheet

Member
 
Join Date: May 2007
Location: India(Chennai)
Posts: 94
#1: Dec 23 '08
Hi all,
I 've created an xsl file to create an excel Workbook with multiple worksheets, thro' xslt. My code works fine for sheet1. Sheet2 was created but has no data. So please help me to fill data in sheet2 also. My code is here
Expand|Select|Wrap|Line Numbers
  1. <?xml version="1.0" encoding="utf-8"?>
  2.  
  3. <xsl:stylesheet version="1.0"
  4.    xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
  5.  
  6.     <xsl:template match="/">
  7.         <html xmlns:o="urn:schemas-microsoft-com:office:office"
  8.        xmlns:x="urn:schemas-microsoft-com:office:excel"
  9.               xmlns:s="urn:schemas-microsoft-com:office:spreadsheet"
  10.           xmlns="http://www.w3.org/TR/REC-html40">
  11.             <head>
  12.                 <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
  13.                 <style>
  14.                     .xlText{mso-number-format:"@";text-align:left;font-family:新細明體;font-size:12px;}
  15.                     .xlHeader{font-family:新細明體;font-size:12px;background:#CCFFCC;}
  16.                     .xlEach{font-family:新細明體;font-size:12px;}
  17.                     .xlTitle{font-size:20px;font-family:新細明體;font-weight:bold;background:#FFFF99;height:30px;}
  18.                     .xlDate{mso-number-format:"yyyy/mm/dd_ ";}
  19.                 </style>
  20.                 <xml>
  21.                     <x:ExcelWorkbook>
  22.                         <x:ExcelWorksheets>
  23.                             <x:ExcelWorksheet>
  24.                                 <x:Name>summary</x:Name>
  25.                                 <x:WorksheetOptions>
  26.                                     <x:ProtectContents>False</x:ProtectContents>
  27.                                     <x:ProtectObjects>False</x:ProtectObjects>
  28.                                     <x:ProtectScenarios>False</x:ProtectScenarios>
  29.                                 </x:WorksheetOptions>
  30.                             </x:ExcelWorksheet>
  31.                             <x:ExcelWorksheet >
  32.                                 <x:Name>GateMoves</x:Name>
  33.                                 <Table x:name="GateMoves"  x:FullColumns="1" x:FullRows="1">
  34.                                     <tr>
  35.                                         <td align="Center" class="xlHeader">Month</td>
  36.                                         <td align="Center" class="xlHeader">Activity</td>
  37.                                         <td align="Center" class="xlHeader">count</td>
  38.                                         <xsl:for-each select="NewDataSet/Table">
  39.                                             <tr>
  40.                                                 <td class="xlEach">
  41.                                                     <xsl:value-of select="Month" />
  42.                                                 </td>
  43.                                                 <td class="xlEach">
  44.                                                     <xsl:value-of select="Activity" />
  45.                                                 </td>
  46.                                                 <td class="xlEach">
  47.                                                     <xsl:value-of select="count" />
  48.                                                 </td>
  49.  
  50.                                             </tr>
  51.                                         </xsl:for-each>
  52.                                     </tr>
  53.                                 </Table>
  54.                                 <x:WorksheetOptions>
  55.                                     <x:ProtectContents>False</x:ProtectContents>
  56.                                     <x:ProtectObjects>False</x:ProtectObjects>
  57.                                     <x:ProtectScenarios>False</x:ProtectScenarios>
  58.                                 </x:WorksheetOptions>
  59.                             </x:ExcelWorksheet>
  60.                         </x:ExcelWorksheets>
  61.                     </x:ExcelWorkbook>
  62.                 </xml>
  63.             </head>
  64.  
  65.             <body >
  66.                 <table border="1" cellpadding="0" cellspacing="0" width="100%" x:worksheet="GateMoves">
  67.                     <tr>
  68.                         <td align="Center" class="xlHeader">Month</td>
  69.                             <td align="Center" class="xlHeader">Activity</td>
  70.                             <td align="Center" class="xlHeader">count</td>
  71.                             <xsl:for-each select="NewDataSet/Table">
  72.                                 <tr>
  73.                                     <td class="xlEach">
  74.                                         <xsl:value-of select="Month" />
  75.                                     </td>
  76.                                     <td class="xlEach">
  77.                                         <xsl:value-of select="Activity" />
  78.                                     </td>
  79.                                     <td class="xlEach">
  80.                                         <xsl:value-of select="count" />
  81.                                     </td>
  82.  
  83.                                 </tr>
  84.                             </xsl:for-each>
  85.                         </tr>
  86.                         </table>        
  87.                         </body >                    
  88.         </html>
  89.     </xsl:template>
  90.  
  91. </xsl:stylesheet>

With Thanks,

Sudha
Moderator
 
Join Date: Mar 2006
Posts: 1,103
#2: Dec 23 '08

re: To create xsl with multiple worksheet


Which version of excel are you using? I'm confused as to why you have a mix of html and word xml.

Would normally advise populating a table in a second worksheet node.
Expand|Select|Wrap|Line Numbers
  1. <?xml version="1.0"?>
  2. <?mso-application progid="Excel.Sheet"?>
  3. <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">
  4.     <Worksheet ss:Name="Sheet1">
  5.         <Table ss:ExpandedColumnCount="1" ss:ExpandedRowCount="1" x:FullColumns="1" x:FullRows="1">
  6.             <Row>
  7.                 <Cell>
  8.                     <Data ss:Type="String">Sheet1Data</Data>
  9.                 </Cell>
  10.             </Row>
  11.         </Table>
  12.     </Worksheet>
  13.     <Worksheet ss:Name="Sheet2">
  14.         <Table ss:ExpandedColumnCount="1" ss:ExpandedRowCount="1" x:FullColumns="1" x:FullRows="1">
  15.             <Row>
  16.                 <Cell>
  17.                     <Data ss:Type="String">Sheet2Data</Data>
  18.                 </Cell>
  19.             </Row>
  20.         </Table>
  21.     </Worksheet>
  22. </Workbook>
  23.  
Reply