Excel导入错位

编辑
  • 文档创建者:印然
  • 浏览次数:4853次
  • 编辑次数:7次
  • 最近更新:Kevin-s 于 2019-06-20
  • 1. 描述

    同一张模板,通过 原样导出 至 Excel 中,再刷新模板导入该 Excel 的时候,发现导入错位的问题,如下图所示:

    222


    2. 思路

    这是因为 FineReport 新增了一个双向导入的功能,即 Excel 双向导入,其处理逻辑发生了变化,并对模板中合并的单元格进行了处理,导致导入错乱的情况出现,那么此时只需要在模板中导出隐藏行列,并使在导入 Excel 的时候,在配置文件中关闭双向导入即可。(双向导入默认关闭的,如果开启了需要关闭)


    3. 操作步骤

    3.1 模板准备

    如上效果图所示,准备如下图所示的模板:

    222

    参数面板中 有2 个参数:starttime 和 endtime,其中开始日期的默认值为:DATEDELTA(today(), if(tointeger(WEEKDAY($Date)) == 0, -6, 1 - WEEKDAY($Date))),结束日期的默认值为:DATEDELTA(today(), if(tointeger(WEEKDAY($Date)) == 0, 0, 7 - WEEKDAY($Date)))

    DATEDELTA() 等函数的具体含义请查看 日期常用处理函数

    合并 B3 和 C3 单元格,其值为:=range(date(year($starttime),month($starttime),day($starttime)),date(year($endtime),month($endtime),day($endtime))),合并D3和E3单元格,其值为=WEEKDAY(B3),合并 F3 和 G3 单元格,设置其 控件类型 为 文本控件

    注:模板中要出现合并的单元格。


    3.2 导出 Excel

    保存模板,点击 填报预览,在web端打开该模板,并输入值班人字段值,如下图,输入完成之后,点击工具栏上的输出>Excel>原样导出,如下图:

    222

    此时,就会导出如上图所示的 Excel。


    3.3 导入 Excel

    回到设计器界面,根据 导入行式报表 中的操作步骤,为该模板的工具栏添加导入 Excel 按钮,添加完成之后,重新填报预览该模板,点击导入 Excel,选择刚刚导出的 Excel 文件,即可看到如下图所示效果,位置错乱:


    3.4 导出隐藏行列

    回到设计器,点击模板导出属性,勾选导出隐藏行导出隐藏列,如下图:

    222


    3.5 结果查看

    此时再重新导出 Excel,导入 Excel,就可以看到位置不会发生错乱了。


    附件列表


    主题: 报表设计
    标签: 暂无标签
    如果您认为本文档还有待完善,请编辑

    文档内容仅供参考,如果你需要获取更多帮助,付费/准付费客户请咨询帆软技术支持
    关于技术问题,您还可以前往帆软社区,点击顶部搜索框旁边的提问按钮
    若您还有其他非技术类问题,可以联系帆软传说哥(qq:1745114201

    此页面有帮助吗?只是浏览 [ 去社区提问 ]