报表的开发利器-ExcelQuicker
控件名称:
ExcelQuicker
作者:
Eunge
邮箱:
功能:
a)支持Excel文件报表, HTML Web在线报表浏览及其打印
b)快速报表开发,样式化的开发,支持从DataTable、DataGrid直接导出数据
c)稳定的报表框架Framework
d)报表开发的新概念:VBA+XLS 就像 CSS+HTML
开发背景:
a) 背景一:用户群广泛
MS Office Excel自诞生以来,被世界各地的人使用和认可,成为世界上使用最为广泛的办公软件。
b) 背景二:强大的性能
Office中的Excel在日常报表作业当中具有天生的优势,打印单的制作、OLAP数据图标分析、图形分析等。并且,Excel不仅仅支持.xls格式文件,它同样可以导出制作.htm等其他格式的文件。另外,它支持广泛的样式、VBA宏。甚至,很多没有经济实力使用应用软件的Customer使用Excel作为业务管理的载体。
c) 背景三:低廉的售价
相比数万美金的Crystal,几百美金的Office2000/2003,并且大多数的windows用户公司原本就拥有Office的版权,这使得架构在Office系统上的报表系统的额外软件成本几乎为0。
d) 背景四:开发、技术
MS提供的Excel COM接口数量繁多,在茫茫的类、接口当中,我们经常会为我们需要实现的功能犯难,并且,在ASP.NET WEB开发中,稳定性是很大的隐患。对于大多数的Excel二次开发者,他们会发现Excel的异步调用会如此之慢,让人有充分的理由怀疑Excel充当报表框架的可行性。
其实,这部分是因为开发者对Excel操作的不熟悉,另外大部分的原因是因为MS对Excel开发没有进行专门的优化。
ExcelQuicker简介:
是的,通过以上的分析,也许我们会对Office报表有所兴趣,但是我们却没有成功应用的把握,而ExcelQuicker,架构在Excel之上,通过对Excel COM接口的封装,有效的改善了Excel报表的性能和稳定性,并且通过了我所开发的几个大型项目的考证,我很肯定它已经成为是一种较为成熟的方案。
a)性能
伴随着算法的升级,ExcelQuicker在导出大数据量的报表时,各个版本的耗时如下图(对于20000行×10列=20万单元格的报表,在P4

版本 |
耗时 |
描述 |
Excel |
20分钟无结果… |
|
V0.9 |
9分30秒 |
|
V1.1 |
5分30秒 |
|
V1.3 |
4分 |
|
V1.5 |
3分20秒 |
|
V2.0 |
1分25秒 |
|
V2.2 |
1分26秒 |
性能的提升可见一斑 |
*通常我们直接进行C#/VB.NET开发这张Excel报表,得到的结果将会是20分钟以上的遥远等待,而现在的ExcelQuicker2.2,我们可以看到ExcelQuicker可以让我们在性能上不再抱有任何怀疑。
b)功能面
*多样式化的报表;
*支持导出XLS文件报表;
*支持导出HTML Web在线报表,支持在线浏览和打印;
*支持OLAP透视图表;
一种新的实现被应用到ExcelQuicker中,那就是
Css+Html = VBA + Excel
某些报表的布局是相当恼人的,如果可以提供给我一个像开发Windows桌面应用程序那样的编辑器会多好,简单的可视化操作,会让我们在最短的时间类完成高效的设计任务。
然而,或许我们没有发现,Excel本身就是这样的编辑器。我们可以先制作Excel模板文件,然后把剩下的工作交给ExcelQuicker,ExcelQuicker甚至支持在上下两片模板之间插入大批量的数据,以此来简化开发工作。
更强劲的办法是,我们可以像CSS对于Web页面那样,让Excel文档中的VBA脚本对于Excel文档,在没有源代码的情况下,让我们照样可以更改Excel的样式、布局和功能。因为,ExcelQuicker会自动调用Excel模板文档上的“CSS样式”——VBA脚本!而Excel文档的VBA制作极其简单,因为Excel本身提供了“宏”录制!并且对于80%的Excel录制的宏可以直接应用在ExcelQuicker中。这种方式使我们对报表的调整极为方便,甚至我们不需要重新编译整个工程,只需要简单的调整Excel模板文件或者模板文件中的VBA宏
花费:
a)系统
我们将分别对使用Excel和Crystal Report两套报表方案进行比较

Solution |
Price |
|
Office2003 |
$409.99 (3200RMB) |
大不多的公司原本就拥有Office,根本不再需要额外开销。 |
Office2000 |
$289.99 (2400RMB) | |
Crystal Report(5*License) |
$11200 (约10万RMB) |
5*License Crystal有使用限制,服务器最多只能链接5个终端 |
Crystal Report |
$100000 (约100万RMB) |
由此可见,开源的ExcelQuicker架构在已拥有的Office上,你在报表的开发中,不仅仅可以节省软件费用的开销,甚至在开发的效率上也是大大提升,试想在最短的时间内提供给客户最优秀的报表系统。
a)开发效率
首先Crystal系统不是人人都熟练掌握,正因为它贵,所以它的确大,因此掌握它的人也毕竟没有掌握C#/VB.NET的人多,例如我们这里之前的一个采用Crystal Report(5*License)方案的系统,同样5个人力,
Solution |
Amount |
Spending |
|
18 |
128人/日 |
ExcelQuicker |
24 |
58人/日 |
对比的这两个方案,都是我们开发人员从陌生到开发出产品所花销的时间,可以看到,要上手Crystal并开发出产品,相对于上手ExcelQuicker的效率还是差了很多。
ExcelQuicker的上手很容易,他的主旨很简单,并且类的数量不多,相信通过ExcelQuicker的数个DEMO示例以及源代码,你可以很快熟悉ExcelQuicker的架构和开发。
ExcelQuicker是开源项目,你可以将它运用在你的商用项目当中或对其进行修改,但ExcelQuicker的版权归我所以,请在修改、重新发布它时,保留版权信息,作为对作者的尊重和开源项目的支持!
ExcelQuicker下载地址
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步