gpt4 book ai didi

java - 使用 Apache POI 重新计算电子表格中的公式

转载 作者:搜寻专家 更新时间:2023-11-01 01:57:19 25 4
gpt4 key购买 nike

我正在尝试使用 POI XSSF 来计算一些 Excel 公式。这些值不必保存,而且我可能需要计算很多公式,所以我尝试在同一个单元格中完成所有这些操作。

问题是,即使在我重新计算之后,单元格值似乎仍停留在输入的第一个公式上

FormulaEvaluator evaluator = wb.getCreationHelper().createFormulaEvaluator();
XSSFCell formulaCell = row.createCell(6);
formulaCell.setCellFormula("Date(2011,10,6)");
CellValue cellValue = evaluator.evaluate(formulaCell);
System.out.println(cellValue.getNumberValue());

formulaCell.setCellFormula("Date(1911,3,4)");
cellValue = evaluator.evaluate(formulaCell);
System.out.println(cellValue.getNumberValue());

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

最佳答案

如果您多次使用 formulaEvaluator,则需要在两次使用之间添加这一行,否则每次都会使用相同的结果。

formulaEvaluator.clearAllCachedResultValues()

关于java - 使用 Apache POI 重新计算电子表格中的公式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5836211/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com