用javascript实现把表格内容导出到excel及把excel里面内容导入表格的方法.docxVIP

  • 8
  • 0
  • 约2.27千字
  • 约 3页
  • 2017-05-19 发布于四川
  • 举报

用javascript实现把表格内容导出到excel及把excel里面内容导入表格的方法.docx

用javascript实现把表格内容导出到excel及把excel里面内容导入表格的方法

用javascript实现把表格内容导出到excel和把excel里面内容导入表格的方法 文件作者 谢晓文 2010-06-08 09:53 阅读 (133) 点评 (3) 资料说明 南京泉峰项目的客户提出可以把excel的数据导入到表格中,但是客户这边的服务器环境没有安装excel,所以不能写ls代理实现。所以找了一个js方法可以满足他们的需求,这里简单推荐一下。顺便把表格导出到excel的js方法也说一下。 一、把excel里面内容导入表格,其实就是把excel每个单元格数据取出赋值到表格之中 1.js方法 //从excel导入数据到表格的方法 function importExcel(fileName) { objCon=new ActiveXObject(ADODB.Connection); objCon.Provider=Microsoft.Jet.OLEDB.4.0; objCon.ConnectionString=Data Source=+fileName+;Extended Properties=Excel 8.0;; objCon.CursorLocation=1; objCon.Open; var strQuery; var strSheetName=Sheet1$; var rsTemp=new ActiveXObject(ADODB.Recordset); rsTemp=objCon.OpenSchema(20); if(!rsTemp.EOF) strSheetName=rsTemp.Fields(Table_Name).Value; rsTemp=null rsExcel=new ActiveXObject(ADODB.Recordset); strQuery=SELECT * FROM [+strSheetName+]; rsExcel.ActiveConnection=objCon; rsExcel.Open(strQuery); var j = 1; while(!rsExcel.EOF) { for(i=0;irsExcel.Fields.Count;i++) { //取出excel表格每一个单元格的值,赋值到表格中 tFeeList.rows[j].cells[i+1].all.F_TmpInput.value = rsExcel.Fields(i).value; } rsExcel.MoveNext; j++; } objCon.Close; objCon=null; rsExcel=null; } 2.在表单需要的地方加上导入的按钮 input type=file id=finput type=button id=b value=import onclick=if(f.value==)alert(请选择xls文件);else importExcel(f.value) / 3.直接用方法实现不负责,不过ie的安全需要设置一下 二、把表格内容导出到excel 1.js方法 function exportExcel(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; //取得表格行数 oSheet.columns.columnwidth = 20 oSheet.columns(1).columnwidth = 5 //oSheet.columns(2).columnwidth = 0 for (i = 0; i Lenr; i++) { var Lenc = curTbl.rows(i).cells.length; //取得每行的列数 for (j = 0; j Lenc; j++) { if (j == 0) oSheet.Cells(i + 1,1).value = curTbl.rows(i).cells(j).innerText; else if (j == 1) continue; else if (j == 5) oSheet.Cells(i + 1, j).value = No:+curTbl.rows(i).cells(j).innerText; else oSheet.Cells

文档评论(0)

1亿VIP精品文档

相关文档