java - poi HSSFCell setCellFormula 中的公式有什么问题?

标签 java apache-poi

我正在尝试在电子表格中设置一个简单的公式,该公式仅从一个单元格中减去另一个单元格的值。这是相关的代码片段。

residentialCell.setCellType(HSSFCell.CELL_TYPE_FORMULA);
residentialCell.setCellFormula(formula);

这是我运行时遇到的错误:

Exception in thread "main" org.apache.poi.ss.formula.FormulaParseException: Unused input [E] after attempting to parse the formula [2E-8E]
    at org.apache.poi.ss.formula.FormulaParser.parse(FormulaParser.java:1573)
    at org.apache.poi.ss.formula.FormulaParser.parse(FormulaParser.java:176)
    at org.apache.poi.hssf.model.HSSFFormulaParser.parse(HSSFFormulaParser.java:72)

公式应该是“2E-8E”,就像它所说的那样。这看起来很简单,如果我忽略了一些对我来说应该显而易见的事情,那么很抱歉。我已经在谷歌上搜索了很长一段时间,我发现的所有例子似乎都表明这应该可行。有什么建议吗?

谢谢!

最佳答案

您的行/列名称颠倒了。假设它是更大公式的一部分,您可能需要 "E2-E8" 而不是 "2E-8E"

该错误表明,解析此部分的任何内容都将“2E-8”识别为有效的浮点文字数字,并带有一个无法解析为任何有意义的额外“E”。

关于java - poi HSSFCell setCellFormula 中的公式有什么问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21441702/

相关文章:

java - 如何替换另一个jar文件中的jar?

java - 无法理解 apache POI 的 shiftRows 方法的工作

java - Cloudant 429 模型过多

java - 在 Java 中使用 BitSet 跟踪前导零

java - 如何在for循环中获取前2个元素然后跳过第三个元素java

java - 如何在 Apache Poi 上使用子表?

java - 如何使用 Java 在现有 Excel 文件中添加行?

java - Apache POI api 和 Apache Tika Api 之间的区别?

java - 无法复制我的对象并更改值

java - 在一种测试方法上使用 Mockito 导致其他测试方法失败