WORD,EXCEL如何成为报表助手!模版写入法!

来源:互联网 发布:无主之地 优化差 编辑:程序博客网 时间:2024/05/09 05:16

WORD,EXCEL如何成为报表助手?

中国的报表还被美其名曰为:中国式报表。两个字:迂腐!

 

但是客户是软件的爹妈,爹妈怎么要求,软件还得怎么定制。

 

通常我们发现,excel,word是统治了世界上99%的手工报表的制作。可以说是万能报表格式的制作工具。

 

前段时间,我制作了一款共享软件,觉得pb程序也好,还是其他程序也好,大可利用word和excel的优势,整合编程工具的优势,达到优美的报表输出功能。前有文章述及,但说的是ole写入之方法。但是!其实啦,ole是最烂的方法。因为要熟悉ole的操作函数,等于要学习另外一个软件的动态语言!并且,ole读写栏位时,行列这些参数都不得错,而且,如果你正在用excel打开另外的excel文档,就在你关闭excel软件时,还会影响到正在被写入的这个excel档案(隐藏写入)。如果你把ole的visible=true的话。只要稍微去动一下鼠标,立马读写错误。所以的所以。都未必是一个可取方法。

 

那我现在说的方式:模版。但是你用ole方式肯定不是模版。php中最好的开发就是美工做一个模版,把位置留起来,如:{log_id},{log_name}这样。然后用php对模版进行替换和填充。可以做到界面和数据分离。而且耦合性=0,并且开发很直观。其实道理也很简单。那这里我们运用到这个思路。就是可以在excel里和word里直接做文本替换和填充。当然,你直接用.doc;.xls格式肯定不行,因为这是专用格式,必须要ole才能操纵。我们注意到,word和excel都有sava as菜单。可以存为其他格式,这里我们采用存为htm格式。注意:如果含有插入的图片等玩意,你存为htm格式的话,会生出一个单独的文件夹来(文件夹名同文件名),那这种情况你可以存为mht格式。则图片等玩意可以用二进制数据保存在一个文件中,便于报表拷贝和传递。我以excel为例(其实一些仪器的报表用word做的模版也很多)。

excel模版

 

我们用ue打开:

ue打开

当然如果在word中,我们要使用table,然后给标识时也要用类似数组,如:{ID[1]},{ID[2]}

这样我们就可以在pb中对输出的数据进行写入了。任何编程语言都可以对文本中的字符查找替换。

具体怎么搞法,就不详述了。替换的结果后,我们对文件如果是双击的话,那用浏览器打开,预览可以,但是打印不要搞,如果在文件上点右键,有个“编辑”项,好处就在这里,这个文件仍然可以用excel打开。这就是最妙的地方。

open

 

原创粉丝点击