Excel中的公式不考虑单元格中dynamic生成的值

我在一些单元格中有一个公式,它是基于其他单元格(比如A1,B1)中的值,而这些单元又是从数据库中填充的。我的公式正在变得正确,但它始终考虑A1,B1中的空值。 .ie,打开我的excel,公式的单元格中的值总是为零..除非我在生成的excel中更改它。

我想要它考虑单元格值得到dynamic填充,然后显示结果。请帮助!!!!!

如果您的工作表有一些公式,说A3=sum(A1:A2)是计算,它工作正常与A1 = 5,A2 = 4。 现在如果用2来改变A2的值就好

 sh.getRow(0).getCell(0).setCellValue(2); // set A1=2 

并执行写操作,检查A3的值是否仍然显示为9.看起来不对,但实际上不行。 重点是Excelcaching先前计算的结果,您需要触发重新计算才能更新它们。

 wb.getCreationHelper().createFormulaEvaluator().evaluateAll(); 

或与

  wb.setForceFormulaRecalculation(true); 

然后执行写入操作。 这会给你正确的结果。 详情请点击这里