有没有人知道是否可以在SpreadsheetLight中检索公式的数值?如果没有可以在OpenXml中读取公式为数字?
我需要为cellValue(8,1)
返回7.07 public static void TestSlWorkbook()
{
SLDocument sl = new SLDocument();
sl.SetCellValue(1, 1, 1.01);
sl.SetCellValue(2, 1, 1.01);
sl.SetCellValue(3, 1, 1.01);
sl.SetCellValue(4, 1, 1.01);
sl.SetCellValue(5, 1, 1.01);
sl.SetCellValue(6, 1, 1.01);
sl.SetCellValue(7, 1, 1.01);
sl.SetCellValue(8, 1, "=Sum(A1:A7)");
}
答案 0 :(得分:6)
SpreadsheetLight没有计算引擎,因此没有评估单元格公式(截至当前状态)。您获得的值是Excel之前计算的值(这意味着它可能在您想要值的时间过期)或0(因为SpreadsheetLight没有计算引擎,因此它默认为0或空字符串)。
披露:我写了SpreadsheetLight。
答案 1 :(得分:0)
SpreadsheetLight在他们的网站上有很好的文档(作为chm下载)。它不适合我,所以我解压缩并直接访问html文件(chm是一种奇特的zip文件)。
您是否尝试过sl.GetCellValueAsDouble或SLDocument的任何其他方法?