Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/29.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Apache POI未重新包含_Java_Excel_Apache_Apache Poi - Fatal编程技术网

Java Apache POI未重新包含

Java Apache POI未重新包含,java,excel,apache,apache-poi,Java,Excel,Apache,Apache Poi,我有一本包含大量公式的工作簿,包括依赖于其他依赖于VLOOKUPs的公式的结果的公式,等等。所有这些都会导致计算单个值。当我试图通过POI 3.13获取值时,它是#value!。但是,如果我在Excel中打开工作簿,它的计算结果是正确的 在获得所需的值之前,我会调用: book.getCreationHelper().createFormulaEvaluator().evaluateAll(); 根据文件,这应该解决这些问题。甚至调用#值!这是一个具体的问题,并建议将上述步骤作为一个解决方案,

我有一本包含大量公式的工作簿,包括依赖于其他依赖于VLOOKUPs的公式的结果的公式,等等。所有这些都会导致计算单个值。当我试图通过POI 3.13获取值时,它是#value!。但是,如果我在Excel中打开工作簿,它的计算结果是正确的

在获得所需的值之前,我会调用:

book.getCreationHelper().createFormulaEvaluator().evaluateAll();
根据文件,这应该解决这些问题。甚至调用#值!这是一个具体的问题,并建议将上述步骤作为一个解决方案,但我无法让它发挥作用。我没有任何公式例外

我还尝试在每次设置一个值后调用evaluateAll()(在这个场景中设置了大约100个),但它仍然是#value

该单元格具有以下公式:

=SUM('VEH1'!H3+'VEH2'!H3+'VEH3'!H3+'VEH4'!H3)
所有的细胞,比如“VEH1”!H3,具有处理其特定表的类似公式:

=IF('VEH1'!B10>0,SUM(H11:W11),0)
其中“VEH1”中的值!B10是1到4。H11到W11也是公式单元格,例如:

=H71+H40
H71是这样的:

=ROUND(H69*H39,2)
以此类推,一系列美元价值乘以某些要素价值。因子值主要通过查找找到:

=IF(ISERROR(VLOOKUP($C26,LookupTable,3,FALSE)),1,VLOOKUP($C26,LookupTable,3,FALSE))
其中,上面的LookupTable是另一个工作表上的命名子表。查找通常基于以下值:A)用户(或本例中的POI)在单元格中输入的内容,或B)POI输入的多个单元格的组合,如=B1和B2、B3和B4

每个步骤都会重复几十次。基本上,我得到了16个值的总和,其中16个值中的每一个都是52行的总和,其中大约一半是查找(很多都有不同的IF条件逻辑片段),另一半相当简单=四舍五入(A1*B1,2)公式

这似乎只是失败的最后一步,公式如下:

=SUM('VEH1'!H3+'VEH2'!H3+'VEH3'!H3+'VEH4'!H3)

除了POI中记录的问题的可能指针之外,如果没有复制问题的样本数据,任何人都很难提供帮助。当然,我不能发布,因为这是公司交易数据,对不起。记录的问题是什么?我不知道具体记录的问题。我只是建议,如果有一个与此相关,有人会发布一个链接。当然可以。请指定如何将这些单元格相加,以显示计算中的大多数步骤。我不知道我还可以透露多少。除了POI中记录的问题的可能指针之外,如果没有复制问题的样本数据,任何人都很难提供帮助。当然,我不能发布这些,因为这是公司交易数据,对不起。记录的问题是什么?我不知道具体记录的问题。我只是建议,如果有一个与此相关,有人会发布一个链接。当然可以。请指定如何将这些单元格相加,以显示计算中的大多数步骤。我不知道我还能透露多少。
=SUM('VEH1'!H3+'VEH2'!H3+'VEH3'!H3+'VEH4'!H3)