xxcb1234
xxcb1234
2015-09-07 15:52
采纳率: 0%
浏览 6.2k

使用POI处理Excel中公式不能自动计算出来的问题

提供一个sheet页模板,让用户填写数据,然后上传到服务器,服务器将用户上传的数据,复制到服务器中的模板的相应Sheet页上,再通过excel的公式将计算结果(多行多列)反馈给上传用户,在POI的复制和计算过程中,因公式复杂,公式项多,sheet页多,在调用XSSFFormulaEvaluator.evaluate()方法时导致内存占用过大,GC频率过高,甚至OOM,有什么方法可以解决。
现将用户数据赋值到了服务器模板,在不通过XSSFFormulaEvaluator.evaluate()计算时取excel单元格数据为模板的值,没有刷新。或者有没有什么方法,在获取用户上传数据赋值到服务器模板中,调用excel的公式执行方法?再读取模板中的值……

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

5条回答 默认 最新

  • CSDNXIAOC
    Robot-C 2015-09-07 15:55

    使用POI导入了拥有公式的Excel模板后,发现其中原有公式单元格计算出来的值不能正常显示出来,需要重新刷新该公式后方可正常得出计算结果.
    针对此问题,写了一个测试,代码如下:
    package cn.fory.formula;
    import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.......
    答案就在这里:使用POI处理Excel中公式不能自动计算出来的问题
    ----------------------你好,人类,我是来自CSDN星球的问答机器人小C,以上是依据我对问题的理解给出的答案,如果解决了你的问题,望采纳。

    点赞 评论
  • caozhy
    点赞 评论
  • caozhy
    点赞 评论
  • dcxy0
    Q544471255 2015-09-08 01:33

    用jxl试试呢。。。。。。。。。。。。。

    点赞 评论
  • xxcb1234
    xxcb1234 2015-09-09 08:09

    不是结果计算不出来,是不想计算,因为公式复杂,计算消耗内存太多

    点赞 评论

相关推荐