Java 使用Apache POI XSSFWorkbook,如何一次刷新所有公式单元格?
请看一下这个问题: 我正在加载一个大的Java 使用Apache POI XSSFWorkbook,如何一次刷新所有公式单元格?,java,apache-poi,Java,Apache Poi,请看一下这个问题: 我正在加载一个大的.xlsx文件,大小为5MB,使用ApachePOI加载大约30张表,并将值放入一些单元格。但将所有数据写入工作表后,工作簿不会刷新,这意味着不同单元格上的公式不会得到计算 我使用了“XSSFFormulaEvaluator.evaluateAllFormulaCells(工作簿);”,它给出了如下错误: Exception in thread "main" java.lang.IllegalArgumentException: Unknown er
.xlsx
文件,大小为5MB,使用ApachePOI
加载大约30张表,并将值放入一些单元格。但将所有数据写入工作表后,工作簿不会刷新,这意味着不同单元格上的公式不会得到计算
我使用了“XSSFFormulaEvaluator.evaluateAllFormulaCells(工作簿);
”,它给出了如下错误:
Exception in thread "main" java.lang.IllegalArgumentException: Unknown error type:
-60 at org.apache.poi.ss.usermodel.FormulaError.forInt(FormulaError.java:131)
at org.apache.poi.xssf.usermodel.XSSFCell.setCellErrorValue(XSSFCell.java:667)
at org.apache.poi.xssf.usermodel.XSSFFormulaEvaluator.setCellValue(XSSFFormulaEvaluator.java:209)
at org.apache.poi.xssf.usermodel.XSSFFormulaEvaluator.evaluateFormulaCell(XSSFFormulaEvaluator.java:153)
at org.apache.poi.hssf.usermodel.HSSFFormulaEvaluator.evaluateAllFormulaCells(HSSFFormulaEvaluator.java:327)
at org.apache.poi.hssf.usermodel.HSSFFormulaEvaluator.evaluateAllFormulaCells(HSSFFormulaEvaluator.java:318)
at org.apache.poi.xssf.usermodel.XSSFFormulaEvaluator.evaluateAllFormulaCells(XSSFFormulaEvaluator.java:238) at com.RefreshExcelFile.main(RefreshExcelFile.java:15)
谢谢。您必须遵循以下步骤
XSSFFormulaEvaluator.evaluateAllFormulaCells(工作簿);
workbook.write()代码>
但是您的定义公式的问题看起来像是您的一个公式有问题。你能试着依次计算每个单元格,并从中得出问题公式吗?