html页面表格导出到excel总结

合集下载

vue中使用js-xlsx导出excel文件(可以修改样式)

vue中使用js-xlsx导出excel文件(可以修改样式)

vue中使⽤js-xlsx导出excel⽂件(可以修改样式)前端vue中使⽤js-xlsx导出excel⽂件(可以修改样式)使⽤js-xlsx是因为有个需求是要把⽤户上传的xmind⽂件转excel⽂件导出,当时有点懵,在⽹上找了许多资料发现了前端有如下⼏种⽅法可导出excel⽂件(⽅法有许多但原理都是⼀样的)1.通过js的Blob与Object URL把html表格直接导出注意:只能导出为xls格式的excel⽂件,且实际导出的就是⼀个html⽂档。

但是因为导出的是html所以就可以在保留html表格原有的样式了。

2.使⽤ActiveXObject对象来创建excel⽂件写⼊数据导出注意:只能在ie下使⽤因为只有ie下有ActiveXObject对象3.使⽤jquery的tabletoexcle.js库来导出4.使⽤js-xlsx来导出excel⽂件修改样式需要使⽤xlsx-stylevue中使⽤xlsx的详细步骤安装xlsx插件(需要修改样式的话安装xlsx-style)$ npm install --save xlsx$ npm install --save xlsx-style在需要使⽤的vue⽂件中引⼊import XLSX from "xlsx"如果引⼊xlsx-style的话可能会报错:This relative module was not found:./cptable in ./node_modules/xlsx-style@0.8.13@xlsx-style/dist/cpexcel.js我也不知道是啥问题⼀引⼊就报错有点搞不懂(有⼤佬知道可以回复下(*^_^*))后⾯找到原因了…: 是因为在\node_modules\xlsx-style\dist\cpexcel.js 807⾏的 var cpt = require(’./cpt’ + ‘able’); 这⾥的require("./cptable") 其实没有这个⽂件我参照了xlsx的cpexcel.js这个⽂件的同⼀地⽅是 var cpt = cptable; 所以后⾯改成这个以后引⼊就没问题了具体咋回事也不清楚。

网页数据如何简单导出excel

网页数据如何简单导出excel

网页数据如何简单导出excel在浏览网页时,遇到我们需要的网页数据时,如文字、图片等,如何能简单的导出到Excel 中,方便在本地电脑中查看和编辑呢?当然是有办法的啦!下面就为大家介绍几种简单快速的将网页数据导出到Excel的方法,大家可以灵活运用。

一、通过浏览器导出网页数据具体操作:打开某网页后,右键点击网页空白处,在下拉列表中选择“另存为”,然后在弹出的保存窗口中选择保存类型为“网页全部”。

选择保存位置后确定,保存后就会自动保存两个文件,一个是网址,另一个是保存网页内容元素。

如何导出网页数据,以赶集网采集为例图1二、通过网页数据采集器导出网页数据先通过网页数据采集器,将网页数据采集下来,然后再导出为需要的格式即可。

本文使用的是操作简单、功能强大的八爪鱼采集器。

以下是一个八爪鱼采集并导出网页数据的完整示例。

示例中采集的是赶集网上房产-商铺-深圳-南山分类下的所有商铺信息。

示例网站:/fang6/nanshan/步骤1:创建采集任务1)进入主界面,选择“自定义模式”如何导出网页数据,以赶集网采集为例图22)将要采集的网址URL,复制粘贴到网址输入框中,点击“保存网址”如何导出网页数据,以赶集网采集为例图3步骤2:创建翻页循环1)在页面右上角,打开“流程”,以展现出“流程设计器”和“定制当前操作”两个板块。

将页面下拉到底部,点击“下一页”按钮,在右侧的操作提示框中,选择“循环点击下一页”如何导出网页数据,以赶集网采集为例图4步骤3:创建列表循环1)移动鼠标,选中页面里的第一个商铺链接。

选中后,系统会自动识别页面里的其他相似链接。

在右侧操作提示框中,选择“选中全部”如何导出网页数据,以赶集网采集为例图52)选择“循环点击每个链接”,以创建一个列表循环如何导出网页数据,以赶集网采集为例图6步骤4:提取商铺信息1)在创建列表循环后,系统会自动点击第一个商铺链接,进入商铺详细信息页。

点击需要的字段信息,在右侧的操作提示框中,选择“采集该元素的文本”如何导出网页数据,以赶集网采集为例图72)字段信息选择完成后,选中相应的字段,可以进行字段的自定义命名。

使用纯前端JavaScript实现Excel导入导出方法过程详解

使用纯前端JavaScript实现Excel导入导出方法过程详解

使⽤纯前端JavaScript实现Excel导⼊导出⽅法过程详解公司最近要为某国企做⼀个**统计和管理系统,具体要求包含Excel导⼊导出根据导⼊的数据进⾏展⽰报表图表展⽰(包括柱状图,折线图,饼图),⽽且还要求要有动画效果,扁平化风格Excel 导出,并要提供客户端来管理Excel ⽂件...要求真多!现在总算是完成了,于是将我的经验分析出来。

在整个项⽬架构中,⾸先就要解决Excel导⼊的问题。

由于公司没有⾃⼰的框架做Excel IO,就只有通过其他渠道了。

嗯,我在github上找到了⼀个开源库,通过npm⽅式来安装。

npm install xlsx --save之后,在⾃⼰的html⽂件⾥⾯添加对js⽂件的引⽤<script src="./node_modules/xlsx/dist/jszip.js"></script><script src="./node_modules/xlsx/dist/xlsx.js"></script>通过FileReader对象将数据以⼆进制字符串的⽅式加载到内存中,target.addEventListener('drop', function (e) {e.preventDefault();handleDrop(e.dataTransfer.files[0]);});handleDrop = function(){var reader = new FileReader();reader.onload = function (e) {var data = e.target.result;......};reader.readAsBinaryString(f);}然后我们下来的操作就是要利⽤库对data数据进⾏操作了。

它暴露了⼀个对象XLSX,通过XLSX的read()⽅法就可以将数据读为JSON对象了。

在Vue里如何把网页的数据导出到Excel的方法

在Vue里如何把网页的数据导出到Excel的方法

在Vue⾥如何把⽹页的数据导出到Excel的⽅法前⾔:在做后台管理的时候,我们往往有需要把⽹页上⾯的数据导出到excel这样的需求,真实的企业项⽬⾥对应⼀些导出财务报表、员⼯信息、交易记录、考勤打卡记录…等等需求,本⽂将对此做探讨。

开始前补充:⽹上是有些⽜⼈已经把这个功能封装成组件了,但每个⼈的封装逻辑五花⼋门,组件的功能也很有限,不⼀定真能完全符合⾃⼰的业务需求,找相应的API也很⿇烦,存在不太敢⽤,不会⽤等问题,那么本⽂将教你如何⾃⼰封装,如何⾃⼰⾃定义相关功能,如何⾃定义Excel的样式,尤其是导出excel后⾃定义样式,这在⼀些现存封装好的组件是不好实现的,本⽂可以实现!本⽂导出Excel⽅法的优点:⽹页上的table与导出Excel之后的table完全独⽴,也就是说你导出Excel之后的内容与⽹页没有直接联系,这意味着数据导出到Excel后有⾮常强的1定制性,实在不理解这句话也没关系,本⽂看完你⾃然就明⽩了。

2能跨浏览器兼容,甚⾄是某E浏览器。

3导出⾮常快,不卡顿!⼀、使⽤脚⼿架创建⼀个Vue项⽬,在⽣成的src⽬录下创建exportToExcel.js⽂件(名称⾃取), 并且到App.vue⾥⾯快速模拟⽣成⼀份表格数据1、我这⾥简单模拟⽹页上⼀份表格数据,使⽤的是iview的table组件,⽹页上展⽰的表格的组件你可以⽤你⾃⼰喜欢的组件,我这⾥做演⽰⽤,你完全可以不跟我⼀样;<style lang="less"></style><template><div><h2>这是⼀个使⽤iview的table组件,做展⽰⽤,你当然可以在⾃⼰的项⽬⾥⽤⾃⼰想要的任何table组件</h2><Table :columns="column" :data="tableData"></Table> //iview的Table组件<Button @click="toExcel">导出表格数据到Excel</Button> //导出excel的按钮</div></template><script>import transform from './exportToExcel.js' //这个⽅法来源于⼆步骤封装的⽅法,往下看export default {name:'App', //这是⼀个⽗组件,名称为App.vuedata(){return {tableData:[], //表格数据column:[] //表格的列}},methods:{toExcel(){//调⽤我们封装好的⽅法,传3个参数过去,分别为:数据,⽂件名,回到函数(可根据⾃⼰需求决定回调是否需要)transform(this.tableData, '我是⽂件名', this.callback)},callback(info){console.log(info)}},created(){//模拟⽹络请求this.tableData = [{index:1,name:'我是1号',age:18,sex:'男',hobby:'web',hair:'thick',salaried:'99999999'},{index:2,name:'我是2号',age:18,sex:'男',hobby:'web',hair:'thick',salaried:'99999999'},{index:3,name:'我是3号',age:18,sex:'男',hobby:'web',hair:'thick',salaried:'99999999'},{index:4,name:'我是4号',age:18,sex:'男',hobby:'web',hair:'thick',salaried:'99999999'},{index:5,name:'我是5号',age:18,sex:'男',hobby:'web',hair:'thick',salaried:'99999999'},{index:6,name:'我是6号',age:18,sex:'⼥',hobby:'web',hair:'thick',salaried:'99999999'},{index:7,name:'我是7号',age:18,sex:'⼥',hobby:'web',hair:'thick',salaried:'99999999'},{index:8,name:'我是8号',age:18,sex:'⼥',hobby:'web',hair:'thick',salaried:'99999999'},{index:9,name:'我是9号',age:18,sex:'⼥',hobby:'web',hair:'thick',salaried:'99999999'},{index:10,name:'我是10号',age:18,sex:'⼥',hobby:'web',hair:'thick',salaried:'99999999'},{index:11,name:'我是11号',age:18,sex:'男',hobby:'web',hair:'thick',salaried:'99999999'},{index:12,name:'我是12号',age:18,sex:'男',hobby:'web',hair:'thick',salaried:'99999999'},{index:13,name:'我是13号',age:18,sex:'⼥',hobby:'web',hair:'thick',salaried:'99999999'},{index:14,name:'我是14号',age:18,sex:'⼥',hobby:'web',hair:'thick',salaried:'99999999'},{index:15,name:'我是15号',age:18,sex:'男',hobby:'web',hair:'thick',salaried:'99999999'}]this.column = [{key:'index',title:'序号',width:120},{key:'name',title:'姓名',width:120},{key:'age',title:'年龄',width:120},{key:'sex',title:'性别',width:120},{key:'hobby',title:'爱好',width:120},{key:'hair',title:'发量',width:120},{key:'salaried',title:'薪⽔',width:120}]}}</script>⼆、进⼊exportToExcel.js⽂件,写导出业务逻辑代码,也就是上⾯对应的transform这个⽅法书写思路:采⽤HTML字符串拼接的⽅法,拼接出⼀个table,即可显⽰到Excel;换句话来说使⽤HTML的语法写出来的table能展⽰到excel上⾯,还能携带样式!请⽤⼼看完拼接过程,拼接看懂了,你会90%了!var idTmr;//⾃⼰定义⼀个函数transform,在⾥⾯写我们的业务逻辑function transform(table, name, callback) { //table为表格数据,name为导出⽂件名,//callback为导出完毕回调,⽅便你知道导出完成了(可根据⾃⼰需求决定是否需要)let tableInnerHTML = ''let headerData = ['序号','姓名','年龄','性别','爱好','发量','薪⽔']let bodyData = table //这⾥对应是表格数据,我们只需要传过来即可//拼接完全使⽤thead、tbody、tr、td、th,并且相应的tr、th、td⾥可以写⼀些类似colspan(决定占⼏列)//rowspan(决定占⼏⾏)的属性、可以⽤作合并⾏、合并列等⾼级操作tableInnerHTML += '<thead><tr>'; //头部部分开始拼接!tableInnerHTML += `<th colspan=${headerData.length}style='background:#CCFFFF;border:solid;'>` + "程序员的将来" + "</th></tr>"tableInnerHTML += '<tr>'headerData.forEach(item => {tableInnerHTML += "<th rowspan='1' style='background:#FFFFCC;border:solid'>"+ item + "</th>"})tableInnerHTML += '</tr></thead>'; //头部部分结束tableInnerHTML += '<tbody>' //⾝体部分开始bodyData.forEach(item => {tableInnerHTML += "<tr>"tableInnerHTML += "<td align='center' style='border:solid'>" + item.index + "</td>"tableInnerHTML += "<td align='center' style='border:solid'>" + + "</td>"tableInnerHTML += "<td align='center' style='border:solid'>" + item.age + "</td>"tableInnerHTML += "<td align='center' style='border:solid'>" + item.sex + "</td>"tableInnerHTML += "<td align='center' style='border:solid'>" + item.hobby + "</td>"tableInnerHTML += "<td align='center' style='border:solid'>" + item.hair + "</td>"tableInnerHTML += "<td align='center' style='border:solid'>" + item.salaried + "</td>"tableInnerHTML += "</tr>"})tableInnerHTML += '</tbody>'; //⾝体结束//------------OK,到此为⽌拼接⼯作做完,也就是基本的数据已经被拼接成表格了--------------------//tip开始(下⾯还有个tip结束的位置)/*-------从tip开始到tip结束的过程是判断浏览器类型步骤,做兼容性处理!对于你来说你完全可以不⽤深⼊理解这⾥⾯的逻辑,直接复制到⾃⼰的项⽬⾥去,不会存在任何浏览器兼容性的问题!*/function getExplorer() {var explorer = erAgent;if (explorer.indexOf('MSIE') >= 0) {return 'ie'; // ie} else if (explorer.indexOf('Firefox') >= 0) {return 'Firefox'; // firefox} else if (explorer.indexOf('Chrome') >= 0) {return 'Chrome'; // Chrome} else if (explorer.indexOf('Opera') >= 0) {return 'Opera'; // Opera} else if (explorer.indexOf('Safari') >= 0) {return 'Safari'; // Safari};};if (getExplorer() !== 'Safari' && name.substr(-1, 4) !== '.xls') {name += '.xls';}if (getExplorer() === 'ie') {var curTbl = table;var oXL = new ActiveXObject('Excel.Application');var oWB = oXL.Workbooks.Add();var xlsheet = oWB.Worksheets(1);var sel = document.body.createTextRange();sel.moveToElementText(curTbl);sel.select();sel.execCommand('Copy');xlsheet.Paste();oXL.Visible = true;try {var fname=oXL.Application.GetSaveAsFilename('Excel.xls', 'Excel Spreadsheets (*.xls), *.xls');} catch (e) {print('Nested catch caught ' + e);} finally {oWB.SaveAs(fname);// oWB.Close(savechanges = false);oXL.Quit();oXL = null;idTmr = setInterval(Cleanup(), 1);}} else {tableToExcel(tableInnerHTML, name, callback); /*在这调⽤下⾯的⼀个⽅法,传⼊拼接完成的表格,⽂件名,回调函数。

SOAOFFICE-微软OFFICE中间件

SOAOFFICE-微软OFFICE中间件

SOAOFFICE-微软OFFICE中间件SOAOffice 中间件是北京科翰软件为微软OFFICE量身打造的Web中间件,是Web调用Office、存取Office数据的必备中间件。

SOAOffice中间件由服务器端数据组件和客户端显示控件构成。

SOAOffice 完全抛弃了传统利用Office服务器端自动化技术存取文档数据的种种弊端和缺陷,采用独创的专利技术构建了一个功能强大、简单易用的微软Office中间件平台,平台提供标准的.net和java 组件接口,不但能够在线(浏览器页面)打开、编辑、保存Office文档,而且开发人员还能够以简洁的代码快速的将数据库数据动态填充到Office文档指定位置,并且也能够从Office文档中提取指定位置的数据保存到数据库。

SOAOffice提供这些强大功能的同时,服务器端并不需要安装运行Office软件。

通过SOAOffice,在Web世界里,难以驯服的Word/Excel就变成了普通的、熟悉的、服务器端可调用的.Net组件、Java组件、ASP组件、PHP组件,开发人员再也不用研究复杂的Word/Excel COM自动化细节、学习复杂的VBA语法调用,也不用去应对Word/Excel死进程、系统稳定运行的问题。

开发人员能够节省宝贵的精力和时间,把它投放到更重要的业务逻辑和系统架构上,而控制Office的具体技术细节交给SOAOffice去做。

SOAOffice除了提供Word/Excel动态数据填充,Word/Excel数据导入导出,Word/Excel/PowerPoint等Office文档的在线打开、编辑、保存,权限控制,只读控制等功能外,还给在线办公内置了强大的支持功能:强制痕迹保留,手写批注,圈阅,手写签名,电子印章、数字签名、模板套红、一键套红等。

科翰软件是国内唯一的微软Office中间件开发商,拥有卓越的自主研发实力和独创的专利技术,其产品SOAOffice不仅畅销国内,而且还远销欧美国际市场,其中世界500强美国Dover集团、可口可乐Coca-Cola、中石油、中石化等都是SOAOffice产品的忠实客户。

在ASP中怎么把页面中的数据导出到EXCEL

在ASP中怎么把页面中的数据导出到EXCEL

使用asp怎样将数据导出到excel文件 Web注意:两个函数中的“data“是网页中要导出的table的 id<input type="hidden" name="out_word" onclick="vbscript:buildDoc" value="导出到word" class="notPrint"><input type="hidden" name="out_excel" onclick="AutomateExcel();" value="导出到excel" class="notPrint">导出到Excel代码<SCRIPT LANGUAGE="JavaScript"><!--function AutomateExcel(){// Start Excel and get Application object.var oXL = new ActiveXObject("Excel.Application");// Get a new workbook.var oWB = oXL.Workbooks.Add();var oSheet = oWB.ActiveSheet;var table = document.all.data;var hang = table.rows.length;var lie = table.rows(0).cells.length;// Add table headers going cell by cell.for (i=0;i<hang;i++){for (j=0;j<lie;j++){oSheet.Cells(i+1,j+1).Value = table.rows(i).cells(j).innerText;}}oXL.Visible = true;erControl = true;}//--></SCRIPT>导出到Word代码<script language="vbscript">Sub buildDocset table = document.all.datarow = table.rows.lengthcolumn = table.rows(1).cells.lengthSet objWordDoc = CreateObject("Word.Document")'objWordDoc.Application.Documents.Add theTemplate, FalseobjWordDoc.Application.Visible=TrueDim theArray(20,10000)for i=0 to row-1for j=0 to column-1theArray(j+1,i+1) = table.rows(i).cells(j).innerTEXTnextnextobjWordDoc.Application.ActiveDocument.Paragraphs.Add.Range.InsertBefore("综合查询结果集") //显示表格标题objWordDoc.Application.ActiveDocument.Paragraphs.Add.Range.InsertBefore("") Set rngPara = objWordDoc.Application.ActiveDocument.Paragraphs(1).Range With rngPara.Bold = True //将标题设为粗体.ParagraphFormat.Alignment = 1 //将标题居中 = "隶书" //设定标题字体.Font.Size = 18 //设定标题字体大小End WithSet rngCurrent = objWordDoc.Application.ActiveDocument.Paragraphs(3).RangeSet tabCurrent = ObjWordDoc.Application.ActiveDocument.Tables.Add(rngCurrent,row,column)for i = 1 to columnobjWordDoc.Application.ActiveDocument.Tables(1).Rows(1).Cells(i).Range.InsertAfter theArray(i,1)objWordDoc.Application.ActiveDocument.Tables(1).Rows(1).Cells(i).Range.Paragraph Format.alignment=1nextFor i =1 to columnFor j = 2 to rowobjWordDoc.Application.ActiveDocument.Tables(1).Rows(j).Cells(i).Range.InsertAfter theArray(i,j)objWordDoc.Application.ActiveDocument.Tables(1).Rows(j).Cells(i).Range.Paragraph Format.alignment=1NextNextEnd Sub</SCRIPT>在ASP中怎么把页面中的数据导出到EXCEL直接读SQL库,我想也可以用来解决你的问题,(同理:页面上显示的内容当然也是读库的,除非你是静态的那算了)<!--#include file="../opendb.asp"--><!--写链接的事不用我弄了吧?--><title>生成报表</title><%dim conn,strconnset conn=server.CreateObject("adodb.connection")conn.Open ConnStrdim rs,sql,filename,fs,myfile,xSet fs = server.CreateObject("scripting.filesystemobject")filepath=Request.ServerVariables("APPL_PHYSICAL_PATH")filename = filepath&"temp_xls\"&year(now)&month(now)&day(now)&".xls"if fs.FileExists(filename) thenfs.DeleteFile(filename)end ifset myfile = fs.CreateTextFile(filename,true)Set rs = Server.CreateObject("ADODB.Recordset")sql = "select * from jdxx"rs.Open sql,conn,1,1if rs.EOF and rs.BOF thenelsedim strLine,responsestrstrLine=""For each x in rs.fieldsstrLine = strLine & & chr(9)Nextmyfile.writeline strLineDo while Not rs.EOFstrLine=""for each x in rs.FieldsstrLine = strLine & x.value & chr(9)nextmyfile.writeline strLiners.MoveNextloopend ifrs.Closeset rs = nothingremotefile="http://xxx.xxx.x.xxx/temp_xls/"&year(now)&month(now)&day(now)&".xls" response.write "<font size=2 color=blue>报表巳生成,<a href="&remotefile&">请点击这里下载该报表!</a></font>"%>在ASP中怎么把页面中的数据导出到EXCEL<%@ LANGUAGE="VBSCRIPT" CODEPAGE="950"%><%'關鍵所在Response.ContentType = "application/vnd.ms-excel"Set conn=Server.CreateObject("ADODB.Connection")Set rs=Server.CreateObject("ADODB.Recordset")strconn = "Provider = SQLOLEDB; Data Source = 192.168.0.2; Uid=gt_bbs;Pwd=gt_bbs;DataBase=gt_bbs"conn.open strconnSQL="Select top 100 id,uid,uer,bm,zw,zb,gxrq,ip,be From Gt_user order by id desc"rs.Open SQL,conn,3,1if rs.eof and rs.bof thenResponse.Write"<div align=center><br>沒有任何記錄</div>"else%><TABLE cellSpacing=0 cellPadding=0 width="100%" border=1><TR><TD width=12% height="25" class=borderon>&nbsp;代 </TD> <TD width="11%" class=borderon>&nbsp; 名</TD><TD width="11%" class=borderon>&nbsp;部門</TD><TD width="14%" class=borderon>&nbsp; </TD><TD width="6%" class=borderon>&nbsp; 別</TD><TD width="16%" class=borderon>&nbsp; 登</TD><TD width="16%" class=borderon>&nbsp; 登 IP</TD> </TR></TABLE><TABLE width="100%" border=1 cellPadding=0 cellSpacing=0><%do while (Not RS.Eof) and (I<RS.PageSize)%><TR bgcolor=<%=bg2%>><TD class=all width=12% height=20 >&nbsp;<%=rs(1)%></TD> <TD width="11%" class=all>&nbsp;<%=rs(2)%></TD><TD width="11%" class=all>&nbsp;<%=rs(3)%></TD><TD width="14%" class=all>&nbsp;<%=rs(4)%></TD><TD width="6%" class=all>&nbsp;<%=rs(5)%></TD><TD width="16%" class=all>&nbsp;<%=rs(6)%></TD><TD width="16%" class=all>&nbsp;<%=rs(7)%></TD></TR><%Rs.MoveNextLoopend IFSet Conn = NothingSet Rs = Nothing%></TABLE>。

js操作html页面写入excel

js操作html页面写入excel

js操作html页⾯写⼊excel<html><head><script language="javascript" type="text/javascript"></script><script language="javascript" type="text/javascript">function MakeExcel(){var i,j;try {var xls = new ActiveXObject ( "Excel.Application" );}catch(e) {alert( "要打印该表,您必须安装Excel电⼦表格软件,同时浏览器须使⽤“ActiveX 控件”,您的浏览器须允许执⾏控件。

请点击【帮助】了解浏览器设置⽅法!"); return "";}xls.visible =true; //设置excel为可见var xlBook = xls.Workbooks.Add;var xlsheet = xlBook.Worksheets(1);<!--合并-->xlsheet.Range(xlsheet.Cells(1,1),xlsheet.Cells(1,7)).mergecells=true;xlsheet.Range(xlsheet.Cells(1,1),xlsheet.Cells(1,7)).value="发卡记录";// xlsheet.Range(xlsheet.Cells(1,1),xlsheet.Cells(1,6)).Interior.ColorIndex=5;//设置底⾊为蓝⾊// xlsheet.Range(xlsheet.Cells(1,1),xlsheet.Cells(1,6)).Font.ColorIndex=4;//设置字体⾊// xlsheet.Rows(1). Interior .ColorIndex = 5 ;//设置底⾊为蓝⾊设置背景⾊ Rows(1).Font.ColorIndex=4<!--设置⾏⾼-->xlsheet.Rows(1).RowHeight = 25;<!--设置字体 ws.Range(ws.Cells(i0+1,j0), ws.Cells(i0+1,j1)).Font.Size = 13 -->xlsheet.Rows(1).Font.Size=14;<!--设置字体设置选定区的字体 xlsheet.Range(xlsheet.Cells(i0,j0), ws.Cells(i0,j0)) = "⿊体" -->xlsheet.Rows(1)="⿊体";<!--设置列宽 xlsheet.Columns(2)=14;-->xlsheet.Columns("A:D").ColumnWidth =18;<!--设置显⽰字符⽽不是数字-->xlsheet.Columns(2).NumberFormatLocal="@";xlsheet.Columns(7).NumberFormatLocal="@";//设置单元格内容⾃动换⾏ range.WrapText = true ;//设置单元格内容⽔平对齐⽅式 range.HorizontalAlignment = Excel.XlHAlign.xlHAlignCenter;//设置单元格内容竖直堆砌⽅式//range.VerticalAlignment=Excel.XlVAlign.xlVAlignCenter//range.WrapText = true; xlsheet.Rows(3).WrapText=true ⾃动换⾏//设置标题栏xlsheet.Cells(2,1).Value="卡号";xlsheet.Cells(2,2).Value="密码";xlsheet.Cells(2,3).Value="计费⽅式";xlsheet.Cells(2,4).Value="有效天数";xlsheet.Cells(2,5).Value="⾦额";xlsheet.Cells(2,6).Value="所属服务项⽬";xlsheet.Cells(2,7).Value="发卡时间";var oTable=document.all['fors:data'];var rowNum=oTable.rows.length;for(i=2;i<=rowNum;i++){for (j=1;j<=7;j++){//html table类容写到excelxlsheet.Cells(i+1,j).Value=oTable.rows(i-1).cells(j-1).innerHTML;}}<!-- xlsheet.Range(xls.Cells(i+4,2),xls.Cells(rowNum,4)).Merge; -->// xlsheet.Range(xlsheet.Cells(i, 4), xlsheet.Cells(i-1, 6)).BorderAround , 4// for(mn=1,mn<=6;mn++) . xlsheet.Range(xlsheet.Cells(1, mn), xlsheet.Cells(i1, j)).Columns.AutoFit;xlsheet.Columns.AutoFit;xlsheet.Range( xlsheet.Cells(1,1),xlsheet.Cells(rowNum+1,7)).HorizontalAlignment =-4108;//居中xlsheet.Range( xlsheet.Cells(1,1),xlsheet.Cells(1,7)).VerticalAlignment =-4108;xlsheet.Range( xlsheet.Cells(2,1),xlsheet.Cells(rowNum+1,7)).Font.Size=10;xlsheet.Range( xlsheet.Cells(2,1),xlsheet.Cells(rowNum+1,7)).Borders(3).Weight = 2; //设置左边距xlsheet.Range( xlsheet.Cells(2,1),xlsheet.Cells(rowNum+1,7)).Borders(4).Weight = 2;//设置右边距xlsheet.Range( xlsheet.Cells(2,1),xlsheet.Cells(rowNum+1,7)).Borders(1).Weight = 2;//设置顶边距xlsheet.Range( xlsheet.Cells(2,1),xlsheet.Cells(rowNum+1,7)).Borders(2).Weight = 2;//设置底边距erControl = true; //很重要,不能省略,不然会出问题意思是excel交由⽤户控制xls=null;xlBook=null;xlsheet=null;}</script> <link href="css/styles3.css" rel="stylesheet" type="text/css"/><title>ziyuanweihu</title></head><body><form id="fors" method="post" action="/WebModule/admins/card/showcard.faces" enctype="application/x-www-form-urlencoded"><table id="fors:top" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td class="left"><img src="images/jiao1.gif" alt="" /></td><td class="topMiddle"></td><td class="right"><img src="images/jiao2.gif" alt="" /></td></tr></tbody></table><table border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td class="middleLeft"></td><td class="btstyle"><table id="fors:sort" border="0" cellpadding="0" cellspacing="0" style="valign:center" width="100%"><tbody><tr><td class="btstyle"><input type="button" name="fors:_id7" value="⽣成excel⽂件" onclick="MakeExcel()" /><input type="submit" name="fors:_id8" value="返回" /></td> </tr></tbody></table><table id="fors:data" border="1" cellpadding="0" cellspacing="1" width="100%"><thead><tr><th scope="col"><span id="fors:data:headerText1">卡号</span></th><th scope="col"><span id="fors:data:headerText2">密码</span></th><th scope="col"><span id="fors:data:headerText3">计费⽅式</span></th><th scope="col"><span id="fors:data:headerText4">有效天数</span></th><th scope="col">⾦额</th><th scope="col"><span id="fors:data:headerText6">所属服务项⽬</span></th><th scope="col"><span id="fors:data:headerText7">发卡时间</span></th></tr></thead><tbody><tr><td>h000010010</td><td>543860</td><td>计点</td><td></td><td>2.0</td><td>测试项⽬</td><td>2006-06-23 10:14:40.843</td></tr><tr><td>h000010011</td><td>683352</td><td>计点</td><td></td><td>2.0</td><td>测试项⽬</td><td>2006-06-23 10:14:40.843</td></tr><tr><td>h000010012</td><td>433215</td><td>计点</td><td></td><td>测试项⽬</td><td>2006-06-23 10:14:40.843</td></tr><tr><td>h000010013</td><td>393899</td><td>计点</td><td></td><td>2.0</td><td>测试项⽬</td><td>2006-06-23 10:14:40.843</td></tr><tr><td>h000010014</td><td>031736</td><td>计点</td><td></td><td>2.0</td><td>测试项⽬</td><td>2006-06-23 10:14:40.843</td></tr><tr><td>h000010015</td><td>188600</td><td>计点</td><td></td><td>2.0</td><td>测试项⽬</td><td>2006-06-23 10:14:40.843</td></tr><tr><td>h000010016</td><td>363407</td><td>计点</td><td></td><td>2.0</td><td>测试项⽬</td><td>2006-06-23 10:14:40.843</td></tr><tr><td>h000010017</td><td>175315</td><td>计点</td><td></td><td>2.0</td><td>测试项⽬</td><td>2006-06-23 10:14:40.843</td></tr><tr><td>h000010018</td><td>354437</td><td>计点</td><td></td><td>2.0</td><td>测试项⽬</td><td>2006-06-23 10:14:40.843</td></tr><tr><td>h000010019</td><td>234750</td><td>计点</td><td></td><td>2.0</td><td>测试项⽬</td><td>2006-06-23 10:14:40.843</td></tr></tbody></table></td><td class="middleRight"></td></tr></tbody></table><table id="fors:bottom" border="0" cellpadding="0" cellspacing="0" width="100%"> <tbody><tr><td class="left"><img src="images/jiao3.gif" alt=""/></td><td class="bottomMiddle"> </td><td class="right"><img src="images/jiao4.gif" alt=""/></tr></tbody></table><input type="hidden" name="fors" value="fors" /></form> </body></html>。

htmltabletoexcel用法

htmltabletoexcel用法

htmltabletoexcel用法htmltabletoexcel用法是一种将HTML表格转换为Excel文件的方法。

通过使用这个方法,可以将网页上的表格数据直接导出为Excel文件,方便保存和处理数据。

要使用htmltabletoexcel,需要首先引入相关的JavaScript库。

你可以在网上搜索htmltabletoexcel的代码和文件,并将其下载到你的项目中。

一旦你引入了htmltabletoexcel的代码,就可以在你的HTML页面上使用它了。

在需要将表格导出为Excel的地方,你可以添加一个按钮或者其他触发事件的元素,并在其点击事件中调用htmltabletoexcel方法。

例如,下面是一个简单的示例代码,展示了如何使用htmltabletoexcel来将HTML表格导出为Excel文件:```html<!DOCTYPE html><html><head><title>HTML Table to Excel</title><script src="path/to/htmltabletoexcel.js"></script></head><body><table id="myTable"><thead><tr><th>姓名</th><th>年龄</th><th>性别</th></tr></thead><tbody><tr><td>小明</td><td>20</td><td>男</td></tr><tr><td>小红</td><td>22</td><td>女</td></tr></tbody></table><button onclick="exportTableToExcel('myTable', 'excel')">导出为Excel</button> <script>function exportTableToExcel(tableID, filename = ''){var downloadLink;var dataType = 'application/vnd.ms-excel';var tableSelect = document.getElementById(tableID);var tableHTML = tableSelect.outerHTML.replace(/ /g, '%20'); filename = filename?filename+'.xls':'excel_data.xls';downloadLink = document.createElement('a');document.body.appendChild(downloadLink);if(navigator.msSaveOrOpenBlob){var blob = new Blob(['\ufeff', tableHTML], {type: dataType});navigator.msSaveOrOpenBlob(blob, filename);}else{downloadLink.href = 'data:' + dataType + ', ' + tableHTML; downloadLink.download = filename;downloadLink.click();}}</script></body></html>```在上面的例子中,我们首先引入htmltabletoexcel.js文件,然后在表格下方添加了一个按钮,并在其点击事件中调用了exportTableToExcel方法,将表格导出为Excel文件。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

html页面表格导出到excel总结最近一个项目需要把报表的表格导入excel,在网上找了一些方法,比较研究了一下,记在这里,备忘。

表格例子如下:<table id="tableExcel"width="100%"border="1"cellspacing="0" cellpadding="0"><tr><td colspan="5"align="center">html 表格导出道Excel td> tr><tr><td>列标题1td><td>列标题2td><td>类标题3td><td>列标题4td><td>列标题5td>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>1、js的方法A、将整个表格拷贝到EXCEL中function method1(tableid) {var curTbl = document.getElementById(tableid);var oXL = new ActiveXObject("Excel.Application");var oWB = oXL.Workbooks.Add();var oSheet = oWB.ActiveSheet;var sel = document.body.createTextRange();sel.moveToElementText(curTbl);sel.select();sel.execCommand("Copy");oSheet.Paste();oXL.Visible = true;}B、读取表格中每个单元到EXCEL中:function method2(tableid){var curTbl = document.getElementById(tableid);var oXL = new ActiveXObject("Excel.Application"); var oWB = oXL.Workbooks.Add();var oSheet = oWB.ActiveSheet;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;}c、把表格输出到另一个页面,然后存成cvs格式function getXlsFromTbl(inTblId, inWindow){try {var allStr = "";var curStr = "";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.description + "!"); }}function getTblData(inTbl, inWindow) {var rows = 0;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++) {for (var i = 0; i < curTbl.rows[j].cells.length; 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 = "table" + "_" + curYear + curMonth + curDate + "_"+ curHour + curMinute + curSecond + ".csv";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();}总结:比较上面3种方法,感觉第一种方法比较完美一些,因为这种方法比较完整的输出表格的格式。

但,第一和第二种方法都用了ActiveX 对象,对客户端的安全有要求,而且最大的问题还有一个,就是excel 对象无法关闭。

相关文档
最新文档