我在一些单元格中有一个公式,它是基于其他单元格(比如A1,B1)中的值,而这些单元格又是从database.My中填充而来的公式是正确的,但它总是考虑A1,B1...ie中的空值,在打开我的excel时,具有公式的单元格中的值始终是zero..unless我在生成的excel中更改它。
我希望它考虑动态填充的单元格值,然后显示result.Please帮助!
发布于 2013-07-18 00:03:53
如果您的工作表包含一些公式,例如计算A3=sum(A1:A2),并且它可以很好地与A1=5一起使用,则A2 =4。
sh.getRow(0).getCell(0).setCellValue(2); // set A1=2 并执行写操作,检查A3的值,它仍然显示为9。它看起来是错误的,但实际上并不是。的要点是,Excel缓存以前计算的结果,您需要触发重新计算才能更新它们。
wb.getCreationHelper().createFormulaEvaluator().evaluateAll();或使用
wb.setForceFormulaRecalculation(true);然后执行写操作。这将为您提供正确的结果。有关详细信息,请查看here
https://stackoverflow.com/questions/17704197
复制相似问题