用js導出數據到Excel文檔

<script type="text/javascript">

/**

 *  讀取表格中每個單元內容到EXCEL

 *  author: martin

 */

function toExcel(tableid) {

    //檢索瀏覽器

    if(navigator.userAgent.indexOf("MSIE") < 0){ 

        alert('請用ie瀏覽器進行表格導出!'); 

        return; 

    } 

    var curTbl = document.getElementById(tableid);

    var oXL = null; 

    try { 

        oXL = GetObject("", "Excel.Application"); 

    }catch(E){

        try { 

            oXL = new ActiveXObject("Excel.Application"); 

        }catch(E2) { 

          alert("無法啓動Excel/n/n請調整IE瀏覽器的安全級別。"); 

            window.location.reload(true);

            return; 

       } 

    } 

 

    var oWB = oXL.Workbooks.Add();          //創建AX對象excel 

    var oSheet = oWB.ActiveSheet;           //獲取workbook對象

    //定義行高

    oSheet.Rows(1+":"+1).RowHeight = 40;             

    //定義列寬 

    oSheet.Columns('A:A').ColumnWidth = 0; 

    oSheet.Columns('B:B').ColumnWidth = 4; 

    oSheet.Columns('C:C').ColumnWidth = 10; 

    oSheet.Columns('D:D').ColumnWidth = 4; 

    oSheet.Columns('E:E').ColumnWidth = 11; 

    oSheet.Columns('F:F').ColumnWidth = 30; 

    oSheet.Columns('G:G').ColumnWidth = 5; 

    //定義對齊方式

    oSheet.Rows(1).HorizontalAlignment = 3;

 

    /* //指定頁面區域內容導入Excel

    var sel = document.body.createTextRange();      //激活當前sheet  

    sel.moveToElementText(curTbl);                 //把頁面區域內容移到TextRange 

    sel.select();                                //全選TextRange中內容  

    sel.execCommand("Copy");                     //複製內容  

    oSheet.Paste();                           //粘貼到活動的EXCEL  

    oXL.Visible = true;                        //設置excel可見 

    oSheet.Application.Quit();                  //結束當前進程  */

 

    //指定頁面區域"單元格"內容導入Excel

    var Lenr = curTbl.rows.length;                  //取得表格行數

    for(i=0; i<Lenr; i++){

        var Lenc = curTbl.rows(i).cells.length;        //取得每行的列數

        for(j=0; j<Lenc; j++){

        oSheet.Cells(i+1,j+1).value = "'" + curTbl.rows(i).cells(j).innerText;  //賦值

         }

    }

    oXL.Visible = true;

}

 

</script>

-------------------------------------程序調用-----------------------------------

<table id="tableExcel" align="center">*************</table>

<button οnclick="toExcel('tableExcel')">生成Excel報表</button>

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章