在我下面的代码中, c4 的值为零。 C4 单元格的公式为 SUM(C2:C3)。
EPPlus 是否能够读取带有公式的单元格?为什么将 c4 设置为零而不是 12。

using (var package = new ExcelPackage(existingFile))
{
    ExcelWorkbook workBook = package.Workbook;
    var currentWorksheet = workBook.Worksheets.First();

    currentWorksheet.Cells["C2"].Value = 5;
    currentWorksheet.Cells["C3"].Value = 7;
    var c4 = Convert.ToDouble(currentWorksheet.Cells["C4"].Value); //c4 is zero. why?
}

最佳答案

从 EpPlus 4.0.1.1 开始,有一个扩展方法 public static void Calculate(this ExcelRangeBase range) 。在访问 C4 的 Value 属性之前调用它:

currentWorksheet.Cells["C4"].Calculate();

之后 currentWorksheet.Cells["C4"].Value 将返回 12

关于c# - 是否可以用公式读取excel单元格值?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21213106/

10-13 09:02