我正在尝试使用POI XSSF评估一些Excel公式。 这些值不必保存,我可能必须计算许多公式,所以我试图在同一单元格中全部完成操作。

问题在于,即使我重新计算后,单元格值也似乎卡在了第一个输入的公式上 通用标签

这将输出40822.0 两次都是40822.0(相当于10/6/2011的excel),而不是重新评估新公式。

有帮助吗?

解决方案

如果多次使用FormulaEvaluator,则两次使用之间需要此行,否则每次使用相同的结果。 通用标签

其他提示

FormulaEvaluator缓存单元格计算出的值以加快处理速度。如果您在创建评估程序之后执行单元格更新,那么您需要告诉它!

有关更多信息,请参见 FormulaEvaluator 文档细节。对于您的情况,请尝试: 通用标签

您可以按照以下步骤完成工作。这是两个解决方案,您可以使用其中任何一个功能。它会评估整个工作簿,因此您使用的任何公式都会得到评估。希望这会有所帮助。

1)evaluator.evaluateAll(); 2)XSSFFormulaEvaluator.evaluateAllFormulaCells(wb);

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top