我有一个单元格"A1"的值为1.00,是通过公式设置的。
我想将这个值保存到一个变量中。
我尝试过:
ws.Cells["A1"].Value
ws.Cells["A1"].Text
ws.Cells["A1"].GetValue<double>
ws.Cells["A1"].Value.ToString()
这些方法都没用,我要么遇到错误,要么根本得不到我的数值(console.writeline 输出为空)。
我在网上搜索尝试了以上方法。我知道我正确引用了单元格,因为我可以轻松设置值。
那么,我该如何获取我的值 1.00 并将其保存在 double 变量中呢?
编辑:我的代码中,filePath 工作表的 "A1" 单元格的值为 1.00。
using (var pck = new ExcelPackage(filePath))
{
var ws = pck.Workbook.Worksheets[1];
var test1 = ws.Cells["A1"].Value;
var test2 = ws.Cells["A1"].Text;
var test3 = ws.Cells["A1"].GetValue<double>();
Console.WriteLine(test1);
Console.WriteLine(test2);
Console.WriteLine(test3);
}
输出结果为:
[blank]
[blank]
0
编辑2:1.00的值来自一个公式。
var ws = pck.Workbook.Worksheets[1];
。与Excel COM对象模型不同,索引从0开始,因此这将选择工作簿中的第二个工作表。这是你想要的吗? - Joe