function table2xls()
{
  function String.prototype.Trim() {return this.replace(/(^\s*)|(\s*$)/g,"");}
  try
  {
    var e = document.getElementById("tableName");
    var s = ""
    for (var j=0; j<e.rows.length; j++)
    {
      if (e.rows[0].cells[0].innerText.Trim() == "")
      {
        for (var i=1; i<e.rows[j].cells.length; i++)
          s += e.rows[j].cells[i].innerText.Trim() +"\t";
      }
      else
      {
        for (var i=0; i<e.rows[j].cells.length; i++)
          s += e.rows[j].cells[i].innerText.Trim() +"\t";
      }
      s += "\r\n";
    }
    var xlsWindow = window.open("","_blank","width=100,height=100");
    xlsWindow.document.write(s);
    xlsWindow.document.close();
    xlsWindow.document.execCommand('Saveas',true,'%homeDrive%\\aaaa.xls')
    xlsWindow.close();
  }catch(e){}
}

解决方案 »

  1.   


    本人作的例子,请参阅,测试通过<%@  Language=JavaScript %>
    <HTML>
    <HEAD>
    <META NAME="GENERATOR" Content="Microsoft FrontPage 4.0">
    </HEAD>
    <BODY><script language="Jscript"> 
    function openExcelFile(fileStr){
    var xlApp = new ActiveXObject("Excel.Application")
    var strsource=fileStr//.replace("\\","\\\\")
    //var strsource = "d:\\data\\test.xls"
    var xlbook = xlApp.Workbooks.Open(strsource)
    var xlsheet = xlbook.Worksheets(2)
    var myStr=""
    for(var i=1;i<xlbook.Worksheets.count+1;i++)
    myStr+=xlbook.Worksheets(i).name+" ;\t ";
    alert(myStr);
    myStr=""
    for(var t=1;t<35;t++){
    if(xlsheet.cells(4,t).value!=undefined)
    myStr+=xlsheet.cells(4,t).value+" ; ";
    else myStr+="\r 这行是空的  ;\n"
    }alert(myStr);
    myStr="";xlApp.ActiveWorkBook.Close(true,xlbook);
    xlApp.quit();
    //alert("d:\\data\\test\.xsl")
    }
    </script> 
     <input type="file"  name="fileSrc" id="fileSrc" onchange="openExcelFile(this.value)" >
      </BODY>
    </HTML>  
     
    给你一段完整得程序,测试通过:
    <script language="JavaScript" >
    function getDataFromTable(myPathName,myFileName,myFileSuffix,myTableID)
    {   
    var myDir=myPathName;
    var myText=myDir+"\\"+myFileName+"\."+myFileSuffix;
    var tbl=eval(myTableID);
    /******************************************
    注:此处test.xls输出为Excel 文件,还可以为test.txt或test.doc或test.html,输出依次为 文本文件 word文件和网页文件
    ****************************************************/
    var myFso=new ActiveXObject("Scripting.FileSystemObject")
       if(!myFso.FolderExists(myDir)){
       myFso.CreateFolder(myDir);}
       if(!myFso.FileExists(myText)){
       var myStream=myFso.CreateTextFile(myText,true);}
       else  myStream=myFso.OpenTextFile(myText,2,true,false);
       
       var myString="";
    for(var i=0;i<tbl.rows.length;i++){
    for(var j=0;j<(tbl.cells.length/tbl.rows.length);j++){
    if(j==tbl.cells.length/tbl.rows.length-1)
       myString+=tbl.firstChild.childNodes[i].childNodes[j].firstChild.nodeValue+"\r\n";
          else    myString+=tbl.firstChild.childNodes[i].childNodes[j].firstChild.nodeValue+"\t"+"";
    }
        }    
        
     
       alert(myString);
       myStream.Writeline(myString);
       myStream.Close();
      window.open(myText);     }</script>
    你可以看看有关VBA编程方面的书,其实好多东西可以用到的
      

  2.   

    蚕茧页面 http://expert.csdn.net/Expert/topic/1160/1160004.xml?temp=.8918268
      

  3.   

    如果一个workbook里有几个sheet,该怎么做呢,谢谢了