NPOI 读取单元格为公式的值-程序旅途

Excel 中使用公式计算多个单元的值是非常普遍的操作,还有跨Sheet的数据引用。那么如何使用 NPOI 读取这种公式类型的单元格的值呢?

我们以下图中的Excel为例

NPOI 读取单元格为公式的值-程序旅途
NPOI 读取单元格为公式的值-程序旅途

2个sheet,第1个sheet中A7是一个求和公式,等于A1到A5和Sheet2中A1的值。

先来看看NPOI中CellType这个枚举类型

NPOI 读取单元格为公式的值-程序旅途

有一个 Formula,那么我们可以判断当前 cell 的类型,如果为 Formula,就读取 它的 NumericCellValue 的值,即可读取到公式计算后的值。

代码如下:

if (cell.CellType == CellType.Formula)
{
    Console.Write(cell.NumericCellValue);
}