以文本方式查看主题

-  中文XML论坛 - 专业的XML技术讨论区  (http://bbs.xml.org.cn/index.asp)
--  『 XSL/XSLT/XSL-FO/CSS 』  (http://bbs.xml.org.cn/list.asp?boardid=8)
----  求教问题:关于xml+xslt 生成Excel文件的问题  (http://bbs.xml.org.cn/dispbbs.asp?boardid=8&rootid=&id=70876)


--  作者:hugh151721
--  发布时间:12/25/2008 9:08:00 PM

--  求教问题:关于xml+xslt 生成Excel文件的问题
各位大哥:
小弟现在想实现xml+xslt 生成Excel文件,为什么xsl文件用
<table><row><cell></cell></row></table>
可以,但如果用
<table><tr><tdl></tdl></tr></table>
格式便会乱掉,请问这是为什么,难道只能用<row><cell>的形式呢?
--  作者:Qr
--  发布时间:12/26/2008 9:17:00 AM

--  
Excel似乎只能使用<row><cell>等形式,在VBA编程中只发现,而没有tr之类。
--  作者:hugh151721
--  发布时间:12/26/2008 9:35:00 AM

--  
谢谢Qr,那html table 中可以用<row><cell>形式表示吗?
--  作者:Qr
--  发布时间:12/26/2008 9:49:00 AM

--  
应该不行,但好像可以在js中使用,不过row,cell这样的拼写又不对了,应该是rows,cells。


--  作者:hugh151721
--  发布时间:12/26/2008 9:56:00 AM

--  
我想利用xsl+xml生成.xls和.html文件,请问XSL该如何写?我现在写了一个简单的XSL,但在生成.xls格式的excel文件时,它却不支持<tr><td>,请问有什么办法吗?
我的xsl文件:
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
  <xsl:output  indent="yes" method="html"/>
  <xsl:template match="NewDataSet">
    <Workbook xmlns:html="http://www.w3.org/tr/rec-html40">
      <worksheet name="group">
    <table>
      <tr>
        <td >事业群代号</td>
        <td >事业群名称</td>
        <td >员工代号</td>
        <td >员工姓名</td>
        <td >金额</td>
      </tr>
      <xsl:for-each select ="group">
        <tr>
          <td >
            <xsl:value-of select="group_no"/>
          </td>
          <td >
            <xsl:value-of select="group_name"/>
          </td>
          <td >
            <xsl:value-of select="emp_no"/>
          </td>
          <td >
            <xsl:value-of select="emp_name"/>
          </td>
          <td >
            <xsl:value-of select="amt"/>
          </td>
        </tr>
      </xsl:for-each>
    </table>
      </worksheet>
    </Workbook>
  </xsl:template>
</xsl:stylesheet>
--  作者:Qr
--  发布时间:12/26/2008 10:12:00 AM

--  
如果<row><cell>的形式可以解决的话,生成Excel用<row><cell>,HTML用<tr><td>咯。可以写两个xsl或通过模板调用来实现。
--  作者:hugh151721
--  发布时间:12/26/2008 10:17:00 AM

--  
我现在用<row><cell>可以生成EXCEL,用<tr><td>可以生成html,现在就是想是否能用一个XSL能同时生成EXCEL和HTML。烦恼中。PS:我们论坛有专门的交流群吗?
--  作者:hugh151721
--  发布时间:12/26/2008 10:29:00 AM

--  
通过模板调用来实现。是什么意思?
--  作者:Qr
--  发布时间:12/26/2008 10:44:00 AM

--  
不知道你是如何生成EXCEL,所以不知道如何写代码。
建议写两个XSL,根据需要来生成EXCEL或HTML。
XML2EXCEL在我们这个论坛较少有讨论,『 WORD to XML, HTML to XML 』 :http://bbs.xml.org.cn/list.asp?boardid=13
--  作者:hugh151721
--  发布时间:12/26/2008 12:30:00 PM

--  
谢谢Qr板大,我是用asp.net中的XslCompiledTransform类生成的,部分代码如下:
     XslCompiledTransform xslt = new XslCompiledTransform();
     xslt.Load("D:\\项目\\VS2005\\Excel\\test1.xsl", xsltsettings, new XmlUrlResolver());
     xslt.Transform(nav, writer);
--  作者:Qr
--  发布时间:12/26/2008 11:10:00 PM

--  
asp.net?VS2005中DOM转换?很久没写C#代码了,生疏了,忘光了,呵呵。

--  作者:hugh151721
--  发布时间:12/29/2008 8:22:00 AM

--  
是的 ,我是做ASP.net的,最近才刚开始接触XML和XSL。Qr板大有什么关于XML和XSL的好的书或视频推荐吗?
--  作者:Qr
--  发布时间:12/29/2008 12:27:00 PM

--  
中文版的没发现哪本觉得比较好的书,特别是XSL的。我自己也才一本XSL程序员开发指南,权当手册用。
--  作者:hugh151721
--  发布时间:12/29/2008 5:43:00 PM

--  
谢谢Qr !
--  作者:huangss
--  发布时间:1/7/2009 10:05:00 AM

--  
我来了
--  作者:hugh151721
--  发布时间:1/9/2009 11:39:00 AM

--  
Qr版主好:
我现在需要对XML进行分组显示,该用什么方式?
假设我的xml文件如下 :
<?xml version="1.0" standalone="yes"?>
<?xml:stylesheet type="text/xsl" href="group.xsl"?>
<NewDataSet>
  <group>
    <group_no>1</group_no>
    <emp_no>00067</emp_no>
    <group_name>新光</group_name>
    <emp_name>张</emp_name>
    <amt>57.0000</amt>
  </group>
  <group>
    <group_no>1</group_no>
    <emp_no>00064</emp_no>
    <group_name>新光</group_name>
    <emp_name>刘</emp_name>
    <amt>15.0000</amt>
  </group>
  <group>
    <group_no>1</group_no>
    <emp_no>00067</emp_no>
    <group_name>新光</group_name>
    <emp_name>张</emp_name>
    <amt>48.0000</amt>
  </group>
  <group>
    <group_no>1</group_no>
    <emp_no>00067</emp_no>
    <group_name>新光</group_name>
    <emp_name>张</emp_name>
    <amt>22.0000</amt>
  </group>
</NewDataSet>

现在向进行分组显示,如:

1 00064 新光 刘 15.0000
-----------------------------------
1 00067 新光 张 57.0000
1 00067 新光 张 48.0000
1 00067 新光 张 22.0000


W 3 C h i n a ( since 2003 ) 旗 下 站 点
苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
93.750ms