NPOI 公式 MONTH 异常问题

最近在公司项目中,需要操作 Excel 公式,所以想到了 NPOI 库,通过 SetCellFormula 设置公式内容,然后再通过 IFormulaEvaluator.Evaluate 方法计算结果,但是如果公式中存在 MONTH 函数,则结果会与 Excel 中计算的结果不同。

首先在 Excel 中 MONTH("2021-10-22") 与 MONTH(2021-10-22) 的结果会不一样,但是如果把 MONTH("2021-10-22") 带入 NPOI,则会报异常错误,如果使用 MONTH(2021-10-22) 那么结果又与实际获取月份不符,这应该是 NPOI 库的 BUG,我以为 NPOI 会在后续版本修复此 BUG,但我试了 NPOI 最新的几个版本库,都不支持 MONTH("") 函数,期待 NPOI 修复此 BUG,核心计算公式代码如下:

ICell cell = row.CreateCell(0);
cell.SetCellFormula(formula);
IFormulaEvaluator formulaEvaluator = workBook.GetCreationHelper().CreateFormulaEvaluator();
formulaEvaluator.ClearAllCachedResultValues();
CellValue cellValue = formulaEvaluator.Evaluate(cell);

管理员

转载请注明出处!如果本博文或者本站对您(网站)的内容/素材构成侵权,请第一时间与本博主联系!

Press ESC to close