我正在使用Apache POI填充Excel文件的单元格,文档中有很多公式单元格。但是,我希望直接获得要计算的值,而不是在office等Excel工具中打开文档。所以我使用FormulaEvaluator对每个类型为公式的单元格进行计算,但是有很多表格包含许多需要计算的单元格。它使我的程序变得如此缓慢,CPU又如此之高!这是多么可怕的事情!我怎么才能修复它?
发布于 2018-03-07 04:19:40
尝试使用:
FormulaEvaluator evaluator=workbook.getCreationHelper().createFormulaEvaluator();
evaluator.evaluateAll();它循环遍历关联工作簿的所有工作表中的所有单元格。对于包含公式的单元格,将计算其公式,并保存结果。这些单元格将保留为公式单元格。对于不包含公式的单元格,不做任何更改。这是一个有用的包装器,用于循环遍历所有单元格,并对每个单元格调用evaluateFormulaCell
https://stackoverflow.com/questions/46966057
复制相似问题