当前位置: 代码迷 >> JavaScript >> js直接导出报表到excel
  详细解决方案

js直接导出报表到excel

热度:96   发布时间:2012-08-07 14:54:48.0
js直接导出表格到excel

//导出Excel
function exportExcel(DivID,sheetname){

 //先声明Excel插件、Excel工作簿等对像
 var excelApp, excelBook, excelSheet;
 
 try {
  //插件初始化失败时作出提示
  excelApp = new ActiveXObject('Excel.Application');
 }catch (e) {
  alert("无法启动Excel!\n\n如果您确信您的电脑中已经安装了Excel,"+"那么请调整IE的安全级别。\n\n具体操作:\n\n"+"工具 → Internet选项 → 安全 → 自定义级别 → 对没有标记为安全的ActiveX进行初始化和脚本运行 → 启用");
  return false;
 }
 
 //不显示警告
 excelApp.DisplayAlerts = false;
 
 //创建工作簿对象execlBook
 execlBook = excelApp.Workbooks.Add();
 
 excelSheet = excelApp.ActiveWorkBook.WorkSheets(1); 
 
 //获取DOM对像
 var curTb = document.getElementById(DivID);
 
 //设置工作薄名称
 excelSheet.name=sheetname;
 
 //获取BODY文本范围
 var sel = document.body.createTextRange();
 
 //将文本范围移动至DIV处
 sel.moveToElementText(curTb);
 
 //选中Range
 sel.select();
 
 //清空剪贴板
 window.clipboardData.setData('text','');
 
 //将文本范围的内容拷贝至剪贴板
 sel.execCommand("Copy");
 
 //将内容粘贴至工作簿
 excelSheet.Paste();
 
 //打开工作簿
 excelApp.Visible = true;
 
 //清空剪贴板
 window.clipboardData.setData('text','');
 
 // 弹出保存对话框,保存Excel文件  
 excelApp.Save(); 
// 退出Excel实例 
 excelApp.Quit(); 

 
 excelApp = null;//释放对像
 excelBook = null;//释放对像
 excelSheet = null;//释放对像

}

  相关解决方案