严格要求格式的报表的处理方式
在实际应用中,有很多报表的需要很严格的控制格式,例如,公文的展示和打印,在很多政府的项目中,对格式的要求尤为严格,比如说,一小段文字,需要行列的严格对齐,段落要显示的清息,这段文字需要整体加上下划线,等等,这些需求都是很实际的。
下面主要介绍一下格式设置的一些相关的内容,并看一下这些设计方式会遇到的问题。
首先以普通单元格作为参考,如果直接将这段文字的内容直接复制到单元格内,勾选自动换行,如果在字的下面加上下划线,这样设计的实现效果如下:
在上图中可以看到,横框的位置部分下划线只到了有文字的部分,竖框的部分可以看出由于有中文英文及数字,文字竖着不能对齐 ,每行结尾也无法对齐,这样对于格式有严格要求的人来说,样式就不那么合乎要求了。
把单元格设置成html类型或者富文本类型也存在同样的问题,虽然设置的样式多了,但是同样存在着类似的问题。
下面介绍一个严格控制格式的方法。用子报表控制。
主要的思路就是将每行显示的字数固定,截取得到相应文字后传递给子报表展示。
通过单元格的行列的控制实现上述的样式,严格的对对齐,并且纵向上也是对齐的。
具体的设计方法是:
将这段内容先取到例如先写到B2单元格里。
计算应该扩展行数=to(0,len(B2)/40)在A3单元格里写。每行40字,空格包含在内。
在B3单元格里取到对应行的内容=mid(B2,0+A3*40,40+A3*40)
在C3里设计子报表
子报表只需要两行一列,
第一行为扩展=to(0,39)
第二行取到相应的值=mid(arg1,A1,A1+1)
这样就能实现图中的效果了。
这样控制的效果也可以扩展到对段落的控制,需要的客户可以参考以上的方式解决问题。