导出 Excel 相关配置集锦

润乾报表工具采用类 Excel 的设计模式,与 Excel 间支持无缝交互。

比如在设计阶段,可以将 Excel 模板直接转为报表模板;在呈现后又可以将结果导出到 Excel 文件。同时,在导出的结果格式上又可以多种设置,实现不同的导出效果。例如可以选择导出单元格的真实值还是显示值,是不是导出单元格的公式,导出啥格式(xls/xlsx 可选)的文件,亦或者是不是可以选择是否分 sheet 导出等等。

本文就将这些问题的设置方法做个汇总,怎样才能得到想要的效果,方便我们快速参照。

导出单元格真实值还是显示值方法

可设置报表模板内的属性,如下:

选中单元格,右侧属性“其他”内“导出 excel 方式”

imagepng

导出缺省值

即页面显示什么内容,则导出什么内容(设置了显示值的单元格,导出的也是显示值。反之,则为真实值),既见既所得。

导出真实值

如果想实现无论有没有设置显示值,均导出真实值到 Excel,这里对应的单元格“导出 Excel 方式”选择“真实值”。当然,如果单元格没有设置显示值的话,默认的“导出缺省值”也是导出真实值了。

注意的是,在选择了“真实值”方式后,即便单元格有设置的显示值,此时导出也是真实值,所以可能导出的 Excel 结果和页面上看到的不同,所以注意,这里并没发生错误。同理,如果发现导出不一致,可检查是否有此类设置。

导出显示值

在单元格设置了显示值的情况下,导出方式选择“导出缺省值”时或直接选择导出方式“显示值”时,均导出单元格显示值。

导出公式

单元格表达式为 Excel 能识别公式(Excel 内可用公式)时,选择此项后,会同时导出公式(单元格表达式),否则仅导出计算结果。

以上内容也有文档详细介绍,可参考:

http://d.raqsoft.com.cn:6999/report/userrefer/ybdygsx94.html#__600

另外注意

导出的结果可能还会有一些小细节的问题。

比如为什么导出的数据是 .8, 而不是 0.8 呢?这里主要是显示格式设置问题,如果是 ##.00, 当整数部分是 0 的时候就可能会出问题,非零的正常。只要选择对的显示格式就可以了,可改成 #0.00。

如上类似小问题,后续发现再陆续补充到文末的“其他问题链接”。

Excel 对话框及标签属性设置

在页面点导出按钮后,一般默认会弹出对话框,让我们选择导出格式、是否分页和是否导出公式选项。

imagepng

但有些可能想改变此对话框上的默认选项,比如默认选中 xlsx、分页等。

另外有些需求可能更直接,并不需要给终端用户这些选项,给个默认固定下来的方式导出就行了,1 是省了选择的这一步,少一步操作;2 是统一导出 Excel 格式及规则。

下面看下怎么设置:

修改对框框默认选中项

已有文章,请参考: 导出 excel 选择框修改默认导出格式

导出公式到 Excel 文件

勾选对话框内“是否导出公式”即可。

imagepng

不要导出 Excel 的对话框弹窗

润乾报表是通过在 Jsp 内引入标签库解析报表,标签库内有很多个属性,我们可以通过设置导出 Excel 的默认属性实现不弹对话框。

以 demo 应用内的 showReport.jsp 为例:

imagepng

增加 excelPageStyle 属性后,就不再弹出对话框了。

解释下 exdelPageStyle:不指定此属性,则系统弹出对话框让用户选择;设定值:0 不分页、1 分页;

导出 Excel 的默认格式

不弹对话框的话,也就无法选择 Excel 文件的格式了,此时我们可以通过标签属性控制。

excelFormat :默认为 xls 格式,有 xls 和 xlsx 两种可选。

当 excelFormat=”xlsx”,则导出后缀为 xlsx 的文件。

另外,这里的标签属性值可以通过参数值动态控制,访问报表时可以传入导出 Excel 的文件格式,如http://ip:port/demo/reportJsp/showReport.jsp?rpx=a.rpx&eFormat=xls,我们在页面接收到该参数:

String excelFormat= request.getParameter( "eFormat" );

设置到属性值即可:

excelFormat=“<%=excelFormat %>“

此时 url 传来啥格式,导出的 Excel 文件就是啥格式了。

如何修改导出 Excel 对话框内容

比如导出格式,这里不再出现可选内容,直接按照标签属性默认指定格式。

不允许导出公式,则可以将“是否导出公式”选项去掉。

此对话框定义在 jar 包内,为 html 的静态脚本文件(上面“修改对话框默认选中项”已提到),可根据自己需要修改,但如果后期升级替换此 jar,一定要重新修改此文件,避免出现不必要的麻烦。

Jar:report5StaticHtml.jar, /WEB-INF/lib 下

Html 路径:raqsoft/report/statichtml/excelPageStyle.html

内容如下:

imagepng

一看便知,修改也很简单,把不想显示的注释掉或删掉就可以了。

比如,注释掉“导出格式”

imagepng

对话框内则不再显示

imagepng

其他问题链接

润乾报表对导出的 excel 文件中 sheet 命名

润乾 V2018 导出 excel255 限制的问题

超链接报表导出 excel 不显示超链接

导出 excel 名为 url 传递参数拼接

润乾报表 excel 导出提示框内容显示为英文怎么办