`
lgcpeter
  • 浏览: 90164 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Excel报表之js版

阅读更多
 半年以前做过server端生成excel的简单引擎,总感觉不够轻便,尤其在一些固定格式,数据量又不是很大的情况下,上周写了一

个根据表单数据在client端用js生成excle的demo,令我我激动了半天------微软的API太强了!

下面分享一下这段js:
 
 1var excel  = new ActiveXObject("Excel.Application"); //创建AX对象excel
 2excel.visible =true//设置excel可见属性
 3var workbook = excel.Workbooks.Add; //获取workbook对象
 4var sheet1 = xlBook.Worksheets(2);  //创建sheet1
 5var sheet2 = xlBook.Worksheets(1);  //创建sheet2
 6sheet1.Range(sheet1.Cells(1,1),sheet1.Cells(1,14)).mergecells=true//合并单元格
 7sheet1.Range(sheet1.Cells(1,1),sheet1.Cells(1,14)).value="员工月考核成绩"//设置单元格内容
 8sheet1.Range(sheet1.Cells(1,1),sheet1.Cells(1,14)).Interior.ColorIndex=6;//设置底色 
 9sheet1.Range(sheet1.Cells(1,1),sheet1.Cells(1,14)).Font.ColorIndex=5;//设置字体色 
10sheet1.Rows(1).RowHeight = 20//设置列高
11sheet1.Rows(1).Font.Size=16;  //设置文字大小
12sheet1.Rows(1).Font.Name="宋体"//设置字体
13//设置每一列的标题
14sheet1.Cells(2,1).Value="工程师考核项";
15sheet1.Cells(2,2).Value="总分";
16sheet1.Cells(2,3).Value="研发进度";
17sheet1.Cells(2,4).Value="出勤率";
18sheet1.Cells(2,5).Value="执行力";
19sheet1.Cells(2,6).Value="责任心";
20sheet1.Cells(2,7).Value="工作规范";
21sheet1.Cells(2,8).Value="协作精神";
22sheet1.Cells(2,9).Value="进取性";
23sheet1.Cells(2,10).Value="工作合理性";
24sheet1.Cells(2,11).Value="解决问题能力";
25sheet1.Cells(2,12).Value="应变能力";
26sheet1.Cells(2,13).Value="人际技能";
27sheet1.Cells(2,14).Value="理解能力";
28//从表单循环控件中取出数据逐行插入对应列的数据
29var count = sfform.GetAttributeValue('Repeat','Count');
30for(var line=1;line<=count;line++)//begin for
31  var name  = sfform.GetValue('Repeat['+line+'].name');
32  var total= sfform.GetValue('Repeat['+line+'].total');
33  var yfjd = sfform.GetValue('Repeat['+line+'].yfjd');
34  var jh = sfform.GetValue('Repeat['+line+'].jh');
35  var gcgj = sfform.GetValue('Repeat['+line+'].gcgj');
36  var cql = sfform.GetValue('Repeat['+line+'].cql');
37  var zxl = sfform.GetValue('Repeat['+line+'].zxl');
38  var gzgf = sfform.GetValue('Repeat['+line+'].gzgf');
39  var zrx = sfform.GetValue('Repeat['+line+'].zrx');
40  var xzjs = sfform.GetValue('Repeat['+line+'].xzjs');
41  var jqx = sfform.GetValue('Repeat['+line+'].jqx');
42  var gzhl = sfform.GetValue('Repeat['+line+'].gzh');
43  var jjwt = sfform.GetValue('Repeat['+line+'].jjwt');
44  var ybnl = sfform.GetValue('Repeat['+line+'].ybnl');
45  var rjjn = sfform.GetValue('Repeat['+line+'].rjjn');
46  var ljnl = sfform.GetValue('Repeat['+line+'].ljnl');
47  sheet1.Cells(2+line,1).Value=name;
48  sheet1.Cells(2+line,2).Value=total;
49  sheet1.Cells(2+line,3).Value=yfjd;
50  sheet1.Cells(2+line,4).Value=cql;
51  sheet1.Cells(2+line,5).Value=zxl;
52  sheet1.Cells(2+line,6).Value=gzgf;
53  sheet1.Cells(2+line,7).Value=zrx;
54  sheet1.Cells(2+line,8).Value=xzjs;
55  sheet1.Cells(2+line,9).Value=jqx;
56  sheet1.Cells(2+line,10).Value=gzhl;
57  sheet1.Cells(2+line,11).Value=jjwt;
58  sheet1.Cells(2+line,12).Value=ybnl;
59  sheet1.Cells(2+line,13).Value=rjjn;
60  sheet1.Cells(2+line,14).Value=ljnl;
61
62}
//end for
63
64

基本的代码已经实现了,生成excel的格式和一些统计计算,用js写应该是很方便的,以后有例子再作补充。

从代码角度来看这种写法不是很灵活,但在能满足用户的需求前提下,这种生成方式还是很受欢迎的,给用户的感觉就是轻便!

beyondduke 2006-08-05 11:14 发表评论
分享到:
评论

相关推荐

    Excel报表之js版 Excel报表之js版

    ### Excel报表之JS版知识点详解 #### 一、概述 在现代办公自动化环境中,Excel作为数据处理和报表制作的重要工具,被广泛应用于各行各业。对于Web应用开发者而言,能够利用前端技术(如JavaScript)来动态生成...

    WEB页面打印excel报表

    在网页上打印Excel报表是Web应用中常见的需求,特别是在数据展示和分析的场景下。本文将详细介绍如何在WEB页面上实现Excel报表的打印,通过一个简单的示例来帮助开发者理解和应用这一技术。 首先,我们需要理解Web...

    使用Aspose.Cells for java完成复杂Excel报表导出

    这篇博客“使用Aspose.Cells for Java完成复杂Excel报表导出”显然会深入探讨如何利用这个库来创建复杂的电子表格报告,而无需依赖Microsoft Excel本身。Aspose.Cells提供了丰富的API,能够帮助程序员实现对Excel...

    asp.net 中用excel 实现报表设计

    虽然这两种方法在系统配置和Excel报表模板制作方面具有一定的共通之处,但在具体的实现细节上存在显著差异。 ##### 2.1 系统配置 在使用ASP.NET操作Excel之前,需要完成以下几项准备工作: 1. **添加对Excel的引用...

    00 WINCC 调用动态库出EXCEL报表例程的说明_wincc报表_WinCC_wincc报表_WINCC向EXCEL写数据

    本示例主要探讨如何利用WinCC调用动态库(DLL)来生成Excel报表,实现数据的定时写入功能。这对于收集和分析生产线数据、优化生产效率至关重要。 首先,WinCC中的脚本功能是实现此功能的关键。它允许用户编写自定义...

    nodejs基于excel.js实现超轻量级报表源码.rar

    总结来说,这个项目提供了一个用Node.js和excel.js实现轻量级报表的范例,适用于那些需要在服务器端生成Excel报表的开发者。通过深入研究源码,你可以掌握Node.js服务端编程以及使用第三方库处理文件的技巧,对于...

    Blob.js&Export2Excel;.js

    这里,我们将深入探讨如何利用Blob.js和Export2Excel.js这两个JavaScript库来实现这个功能。 首先,Blob.js是一个JavaScript库,它提供了在浏览器端创建Blob对象的能力。Blob对象在Web API中被用来表示不可变的原始...

    00 WINCC 调用动态库出EXCEL报表例程的说明,wincc报表步骤实例,C#

    标题中的“00 WINCC 调用动态库出EXCEL报表例程的说明”表明这是一个关于使用西门子WINCC(Windows Control Center)通过调用动态链接库(DLL)来创建Excel报表的教程。WINCC是西门子的一款人机界面(HMI)软件,常...

    Export2Excel.js

    当我们谈论“Export2Excel.js”时,我们关注的是一个利用JavaScript实现的功能,即从数据源导出到Excel电子表格。这个功能在数据分析、报表生成以及用户需要下载结构化数据的场景下非常常见。 首先,我们要理解...

    Ext生成报表导出到Excel

    2. **导出功能**:在Ext中实现导出到Excel的功能,通常会利用JavaScript库,如`SheetJS`(也称为`js-xlsx`)或`FileSaver.js`。`SheetJS`可以解析和操作Excel文件格式(XLSX),而`FileSaver.js`则用于在浏览器中...

    vue + exceljs + handsontable  实现导入和编辑demo,包含样式读取

    由于handsontable官方不支持excel导入,在尝试了sheetjs后,发现sheetjs会丢失单元格样式,于是转而使用exceljs完整了实现了Excel的读取和渲染。 handsontable非常强大,能够完全自定义单元格渲染方式和内容,是开发...

    Excel转换成Js或者Lua代码_Exceljslua_excel转js_excel转为lua_provideik2_

    在IT行业中,我们经常需要处理各种数据,Excel作为一款强大的电子表格工具,广泛应用于数据分析、报表制作等场景。然而,在编程环境中,JavaScript和Lua作为两种轻量级的脚本语言,也有着各自的适用领域。例如,...

    Blob.js和Export2Excel.js.rar

    Blob.js和Export2Excel.js是两个在Web开发中用于数据处理和导出的JavaScript库,尤其在Vue.js项目中非常常见。Vue.js是一款流行的前端框架,它提供了组件化开发方式,便于构建用户界面。Blob.js和Export2Excel.js在...

    vueelementuiexcel报表设计器插件

    VueElementUIExcel报表设计器插件是一款专为Vue.js框架设计的高效报表工具,它整合了Vue、Element-UI以及Less等技术,旨在提供一个简洁、易用且功能强大的报表编辑环境。这款插件允许开发者在前端实现数据的展示、...

    Blob.js和 Export2Excel.js.zip

    Blob.js和Export2Excel.js是两个JavaScript库,专门用于处理这种需求。Blob.js提供了Blob对象的相关功能,而Export2Excel.js则实现了将HTML表格转换为Excel文件的功能。接下来,我们将深入探讨这两个库的工作原理和...

    解析excel表格需要的js.zip

    在这个名为"解析excel表格需要的js.zip"的压缩包中,包含了两个重要的JavaScript文件:1.xlsx.utils.js和2.xlsx.full.min.js,它们是专门为了解析和操作Excel文件而设计的。 1. xlsx.utils.js: 这是一个JavaScript...

    报表导成出Excel

    "报表导出到Excel中,简单实用"这个描述暗示我们将探讨如何利用Echarts这一流行的JavaScript数据可视化库来实现这一功能。 Echarts是一个由百度开发的开源图表库,它提供了丰富的图表类型,如柱状图、折线图、饼图...

    js导出excel.zip

    在JavaScript编程领域,导出Excel是一项常见的需求,特别是在Web应用中,用户可能需要将数据显示在Excel表格中以便进一步处理或存储。"js导出excel.zip"这个压缩包提供了一个解决方案,它结合了EasyUI和DataGrid组件...

    javascript操作excel生成报表示例_.docx

    在提供的文档示例中,展示了如何使用JavaScript创建一个简单的Excel报表。 首先,这段代码的核心是利用了ActiveXObject,这是一个仅适用于Internet Explorer浏览器的特性,它可以与本地系统上的应用程序进行交互,...

    js excel 批量复制数据到 html

    本教程将详细介绍如何使用JavaScript(js)实现从Excel文档批量复制数据并粘贴到HTML表格(table)中的技术。这一功能对于数据处理、报表展示以及用户交互等方面具有很高的实用价值。 首先,我们要明白JavaScript...

Global site tag (gtag.js) - Google Analytics