Js根据table的id导出table中的数据…

在js中调用本方法,传入table的id即可将这个table导出到Excel

function saveAsExcel(tableID){
    var jXls,myWorksheet;
    try {
        jXls = new ActiveXObject('Excel.Application');
    }
    catch (e) {
        alert(e.message);
        return false;
    }

    jXls.Visible = true;
    myWorksheet = jXls.Workbooks.Add().ActiveSheet;
    var obj = document.getElementByIdx_x(tableID);
 
 if(obj==null) return;
 
 for(i=1;i<=obj.rows(0).cells.length;i++){
        myWorksheet.Columns(i).NumberFormatLocal='@';
 }
 
    for (z = 0; z < obj.rows.length; z++) {
     var colNum=0;
        for (c = 0; c < obj.rows(z).cells.length; c++) {
         if(obj.rows(0).cells(c)&&(obj.rows(0).cells(c).getAttribute("export")==null||obj.rows(0).cells(c).getAttribute("export")=='yes')){
          colNum++;
          myWorksheet.Cells(z+1,colNum).Value = obj.rows(z).cells(c).innerText;
         }
        }     
    }

    var range=myWorksheet.Range(myWorksheet.Cells(1,1),myWorksheet.Cells(z,colNum));
 for(i=1;i<=4;i++){
  range.Borders(i).Weight=2;
 }

 myWorksheet.Columns.AutoFit;
    jXls.UserControl = true;
    myWorksheet=null;
    jXls=null;
}

function saveAsWord(tableID){
  var WordApp;  
  try{
      WordApp=new ActiveXObject("Word.Application");
     }catch(e){
      alert(e.message);
        return false;
     }
     WordApp.Application.Visible=true;
     var PrintA = document.all(tableID);
     var row_count = PrintA.rows.length;
     var col_count = PrintA.rows(0).cells.length;
     var wdCharacter=1;
     var wdOrientLandscape = 1;
     var myDoc=WordApp.Documents.Add();
     WordApp.ActiveDocument.PageSetup.Orientation = wdOrientLandscape
     WordApp.Selection.Font.Size=12;
     WordApp.Selection.Font.Bold=1;
     WordApp.Selection.Paragraphs(1).Alignment=1;
     WordApp.Selection.MoveRight(1);
     WordApp.Selection.TypeParagraph();
     WordApp.Selection.Font.Bold=0;
    
     var colNum=0;
     for (n =0;n
         if(PrintA.rows(0).cells(n).getAttribute("export")==null||PrintA.rows(0).cells(n).getAttribute("export")=='yes'){
           colNum++;
         }
     }
      
     var myTable=myDoc.Tables.Add (WordApp.Selection.Range, row_count,colNum)
     var TableRange;
    
     for (i =1;i<=row_count;i++){
       colNum=0;
       for (n =1;n<=col_count ;n++){
         if(PrintA.rows(0).cells(n-1).getAttribute("export")==null||PrintA.rows(0).cells(n-1).getAttribute("export")=='yes'){
           colNum++;
           myTable.Cell(i,colNum).Range.InsertAfter(PrintA.rows(i-1).cells(n-1).innerText);
         }
       }
     }
     WordApp=null;
}

function saveAsExcel1(tableID){
  var oXL = new ActiveXObject("Excel.Application");
  var oWB = oXL.Workbooks.Add();
  var oSheet = oWB.ActiveSheet;
  var sel=document.body.createTextRange();
  sel.moveToElementText(document.all(tableID));
  sel.select();
  sel.execCommand("Copy");
  oSheet.Paste();
  oXL.Visible = true;
}

你可能感兴趣的:(Js根据table的id导出table中的数据…)