javascript 操作excel

来源:互联网 发布:linux查看硬盘类型sas 编辑:程序博客网 时间:2024/05/22 16:55
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head>    <meta http-equiv="Content-Type" content="text/html; charset=gb2312" />    <title>WEB页面导出为EXCEL文档的方法</title></head><body>    <table id="tableExcel" width="100%" border="1" cellspacing="0" cellpadding="0">        <tr>            <td colspan="5" align="center">                WEB页面导出为EXCEL文档的方法</td>        </tr>        <tr>            <td>                列标题1</td>            <td>                列标题2</td>            <td>                列标题3</td>            <td>                列标题4</td>            <td>                列标题5</td>        </tr>        <tr>            <td>                aaa</td>            <td>                bbb</td>            <td>                ccc</td>            <td>                ddd</td>            <td>                eee</td>        </tr>        <tr>            <td>                AAA</td>            <td>                BBB</td>            <td>                CCC</td>            <td>                DDD</td>            <td>                EEE</td>        </tr>        <tr>            <td>                FFF</td>            <td>                GGG</td>            <td>                HHH</td>            <td>                III</td>            <td>                JJJ</td>        </tr>    </table>    <input type="button" onclick="javascript:method1('tableExcel');" value="第一种方法导入到EXCEL">    <input type="button" onclick="javascript:method2('tableExcel');" value="第二种方法导入到EXCEL">    <input type="button" onclick="javascript:getXlsFromTbl('tableExcel',null);" value="第三种方法导入到EXCEL">    <mce:script language="javascript"><!--  function method1(tableid) {//整个表格拷贝到EXCEL中     var curTbl = document.getElementById(tableid);     var oXL = new ActiveXObject("Excel.Application");     //创建AX对象excel     var oWB = oXL.Workbooks.Add();     //获取workbook对象         var oSheet = oWB.ActiveSheet;     //激活当前sheet     var sel = document.body.createTextRange();     sel.moveToElementText(curTbl);     //把表格中的内容移到TextRange中     sel.select();     //全选TextRange中内容     sel.execCommand("Copy");     //复制TextRange中内容       oSheet.Paste();     //粘贴到活动的EXCEL中            oXL.Visible = true;     //设置excel可见属性 } function method2(tableid) //读取表格中每个单元到EXCEL中 {     var curTbl = document.getElementById(tableid);     var oXL = new ActiveXObject("Excel.Application");     //创建AX对象excel     var oWB = oXL.Workbooks.Add();     //获取workbook对象     var oSheet = oWB.ActiveSheet;     //激活当前sheet     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;     //设置excel可见属性 } function getXlsFromTbl(inTblId, inWindow) {     try {         var allStr = "";         var curStr = "";         //alert("getXlsFromTbl");         if (inTblId != null && inTblId != "" && inTblId != "null") {             curStr = getTblData(inTblId, inWindow);         }         if (curStr != null) {             allStr += curStr;        }        else {            alert("你要导出的表不存在!");            return;        }        var fileName = getExcelFileName();        doFileExport(fileName, allStr);    }    catch(e) {        alert("导出发生异常:" + e.name + "->" + e.description + "!");    }}function getTblData(inTbl, inWindow) {    var rows = 0;    //alert("getTblData is " + inWindow);    var tblDocument = document;    if (!!inWindow && inWindow != "") {        if (!document.all(inWindow)) {            return null;        }        else {            tblDocument = eval(inWindow).document;        }    }    var curTbl = tblDocument.getElementById(inTbl);    var outStr = "";    if (curTbl != null) {       for (var j = 0; j < curTbl.rows.length; j++) {            //alert("j is " + j);            for (var i = 0; i < curTbl.rows[j].cells.length; i++) {                //alert("i is " + i);                if (i == 0 && rows > 0) {                    outStr += " /t";                    rows -= 1;                }                outStr += curTbl.rows[j].cells[i].innerText + "/t";                if (curTbl.rows[j].cells[i].colSpan > 1) {                    for (var k = 0; k < curTbl.rows[j].cells[i].colSpan - 1; k++) {                        outStr += " /t";                    }                }                if (i == 0) {                    if (rows == 0 && curTbl.rows[j].cells[i].rowSpan > 1) {                        rows = curTbl.rows[j].cells[i].rowSpan - 1;                    }                }            }            outStr += "/r/n";        }    }    else {        outStr = null;        alert(inTbl + "不存在!");    }    return outStr;}function getExcelFileName() {    var d = new Date();    var curYear = d.getYear();    var curMonth = "" + (d.getMonth() + 1);    var curDate = "" + d.getDate();    var curHour = "" + d.getHours();    var curMinute = "" + d.getMinutes();    var curSecond = "" + d.getSeconds();    if (curMonth.length == 1) {        curMonth = "0" + curMonth;    }    if (curDate.length == 1) {        curDate = "0" + curDate;    }    if (curHour.length == 1) {        curHour = "0" + curHour;    }    if (curMinute.length == 1) {        curMinute = "0" + curMinute;    }    if (curSecond.length == 1) {        curSecond = "0" + curSecond;    }    var fileName = "leo_zhang" + "_" + curYear + curMonth + curDate + "_"            + curHour + curMinute + curSecond + ".csv";    //alert(fileName);    return fileName;}function doFileExport(inName, inStr) {    var xlsWin = null;    if (!!document.all("glbHideFrm")) {        xlsWin = glbHideFrm;    }    else {        var width = 6;        var height = 4;        var openPara = "left=" + (window.screen.width / 2 - width / 2)                + ",top=" + (window.screen.height / 2 - height / 2)                + ",scrollbars=no,width=" + width + ",height=" + height;        xlsWin = window.open("", "_blank", openPara);    }    xlsWin.document.write(inStr);    xlsWin.document.close();    xlsWin.document.execCommand('Saveas', true, inName);    xlsWin.close();}    // --></mce:script></body></html>
转自:http://blog.csdn.net/qiume/article/details/5586635

原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 妻子出轨分居死也不愿意离婚怎么办 拼多多个人卖家登录密码忘了怎么办 微信被限制添加更多订阅号了怎么办 知网复制粘贴的论文有格式怎么办 知网论文查询网站密码忘记了怎么办 开通了超级会员不能克隆好友怎么办 偷了家里好多钱去买手机了怎么办 中行信用卡短信邀请办白金卡怎么办 注册邮箱说邮箱地址已被注册怎么办 便利店开在小区里面没生意怎么办 微信支付密码忘了怎么办没银行卡 中行5月扣很多钱是怎么办 中银淘宝校园卡影响征信问题怎么办 中银E盾快到期了怎么办 京东e卡电子卡卡密泄漏怎么办 买错了京东e卡怎么办 京东购买手机激活后有问题怎么办 优购m9锁屏密码忘记了怎么办视频 中百仓储的购物卡过期了怎么办 武汉中百超市购物卡过期怎么办 已认证抵扣的发票发生退货怎么办 京东白条分期买手机额度不够怎么办 京东白条闪付手机不支持开通怎么办 拼多多不小心下两次单付款了怎么办 不小心给了京东快递差评怎么办 京东金融不小心卸载了怎么办 如果京东快递不小心完成订单怎么办 订机票时没有用常旅客卡怎么办 京东退货退款卖家已签收了怎么办 京东账号手机号换了密码忘了怎么办 qq飞车手游录像下载失败怎么办 手机知道qq号怎么破解密码怎么办 网上购物已付钱迟迟不发货怎么办 有人冒充微信头像和熟人借钱怎么办 微信红包输了50多万怎么办 脖子里的绳结接口磨脖子怎么办 母比格犬生了小狗毛色变了怎么办 母比格犬生了小狗毛色很差怎么办 貂皮大衣上的暗扣掉了怎么办 呢子夹克袖子长但又不想改短怎么办 黑色的衣服熨的有点发亮怎么办