如何用javascript把网页数据导出到指定的EXCEL文档里的Sheet
从网上找到一段代码,但每次都是打开一个新个EXCEL,不能把内容保存到指定的EXCEL文档里的Sheet,大家看看如何实现这样的功能。多谢了!<HTML>
<BASE HREF="http://vm.ptc.com/Windchill/">
<HEAD>
   <META NAME="Title" CONTENT="Rename MtrDocument">
   <TITLE>流程监控报表结果页面</TITLE>
</HEAD>
<BODY>
   <INPUT type ="button" onclick="javascript:excel();" value="导出到Excel">   <TABLE id=report border="1" cellspacing="0" bordercolorlight="#C0C0C0" bordercolor="#000080" bordercolordark="#FFFFFF">
    <TR> 
     <TD height="31" bgcolor="#008080"><b><FONT color="#FFFFFF">承担用户</FONT></B></TD>
     <TD height="31" bgcolor="#008080"> <b><FONT color="#FFFFFF">接收时间</FONT></B></TD>
     <TD height="31" bgcolor="#008080"> <b><FONT color="#FFFFFF">任务名称</FONT></B></TD>
     <TD height="31" bgcolor="#008080"> <b><FONT color="#FFFFFF">进程名称</FONT></B></TD>
     <TD height="31" bgcolor="#008080"> <b><FONT color="#FFFFFF">滞留天数</FONT></B></TD>
    </TR>
    <TR>
     <TD bgcolor="#E7E7E7">Administrators</TD>
     <TD bgcolor="#E7E7E7">&nbsp;</TD>
     <TD bgcolor="#E7E7E7">&nbsp;</TD>
     <TD bgcolor="#E7E7E7">&nbsp;</TD>
     <TD bgcolor="#E7E7E7">&nbsp;</TD>
    </TR>
    <TR>
     <TD><FONT size="2">Administrator</FONT></TD>
     <TD><FONT size="2">2006-08-25</FONT></TD>
     <TD><FONT size="2">Submit</FONT></TD>
     <TD><FONT size="2">Submit_PART1 (part1) A</FONT></TD>
     <TD><FONT size="2">3</FONT></TD>
    </TR>
    <TR>
     <TD><FONT size="2">Administrator</FONT></TD>
     <TD><FONT size="2">2006-08-28</FONT></TD>
     <TD><FONT size="2">提交变更申请单</FONT></TD>
     <TD><FONT size="2">变更申请单审批流程007_00021 (03201-jz-22)</FONT></TD>
     <TD><FONT size="2">0</FONT></TD>
    </TR>
   </TABLE>
   <BR>
</BODY>
</HTML><SCRIPT language=JavaScript>
function excel()
{
   var oXL = new ActiveXObject("Excel.Application");
   oXL.Visible = true;
   var oWB = oXL.Workbooks.Add();
   var oSheet = oWB.ActiveSheet;
   for (i=0; i < document.all.report.rows.length; i++)
   {
    for (j=0; j < document.all.report.rows(i).cells.length; j++)
    {
     oSheet.Cells(i+1,j+1).Value = document.all.report.rows(i).cells(j).innerText;
    }
    oXL.Visible = true;
    oXL.UserControl = true;
   }
}
</SCRIPT>

解决方案 »

  1.   

    本帖最后由 net_lover 于 2011-02-25 22:02:19 编辑
      

  2.   


    跟据这个方法,每次都新建一个x.xls
      

  3.   

    指定的Sheet名称的方法<SCRIPT language=JavaScript>
    function excel()
    {
      var oXL = new ActiveXObject("Excel.Application");
      oXL.Visible = true;
      var oWB = oXL.Workbooks.Open("c:\\x.xls");
      var oSheet = oWB.Sheets("Sheet2");
      //oSheet.Name = "孟宪会";
      for (i=0; i < document.all.report.rows.length; i++)
      {
      for (j=0; j < document.all.report.rows(i).cells.length; j++)
      {
      oSheet.Cells(i+1,j+1).Value = document.all.report.rows(i).cells(j).innerText;
      }
      oXL.Visible = true;
      oXL.UserControl = true;
      }
    }
    </SCRIPT>
      

  4.   

    你必须先知道Excel文件的位置,这在http://方式下访问是无法实现的,只能本地测试。