我的代码设置了很多单元格值.最后,在生成excel文件之前,需要评估每个单元格中的公式.对于大多数床单来说,情况进展顺利.
但是,有一个单元格抛出异常.该单元格正在计算其后的一系列单元格的平均值,并参考其他工作表中的单元格.我想当第一个细胞试图计算平均值时,之后的细胞还没有被评估.
这是该单元格的公式
=IFERROR(AVERAGEIF(D2:AU2,"<>-"),"-")
Run Code Online (Sandbox Code Playgroud)
我怀疑这是因为单元格int在其他工作表中引用了单元格.D2例如,具有以下公式=Common!E2.
所以我决定做的是:
try-catch块中执行公式.我注意到同一个单元格一直在抛出错误.只是为了能够退出循环,我数到3次迭代.
生成excel生成时,该单元格具有该值-.但是,当我选择单元格然后按enter,它会执行并显示正确的值.
我推迟执行该单元格的原因是,在第一次迭代之后,已经评估了引用其他工作表的单元格.但是,它仍然没有工作,因为它不断抛出异常.
谢谢你的帮助.
我正在使用npoi和c#.
在NPOI
if(wb is XSSFWorkbook) {
XSSFFormulaEvaluator.EvaluateAllFormulaCells(wb);
} else {
HSSFFormulaEvaluator.EvaluateAllFormulaCells(wb);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5690 次 |
| 最近记录: |