如何将excel单元格内容转换为double

时间:2014-06-04 19:58:32

标签: c#

我需要从Excel导入一些内容,我刚刚开始浏览,但我无法将.Value2转换为double(最后我想要自定义列表中的excel内容)。这就是我所做的:

Excel.Application xlApp = new Excel.Application();
Excel.Workbook xlWorkbook = xlApp.Workbooks.Open(@"D:\Test.xls");
Excel._Worksheet xlWorksheet = xlWorkbook.Sheets[1];
Excel.Range range;
range = xlWorksheet.get_Range("A20:V20000", Missing.Value);
int rowcount = range.Rows.Count;
double testsum = 0;

for (int i=1; i<=rowcount;i++)
{
   try
   {
      testsum += double.Parse(range.Cells[i, 2].Value2.ToString());
   }
   catch 
   { 
      break; 
   }
}
Console.WriteLine(testsum.ToString());
Console.ReadKey();

即使填充了列,也会返回零。 这也会返回零:

testsum += range.Cells[i, 2].Value2;

一般来说,使用Interop优于OleDB的优势/劣势是什么?我确切地知道列格式和开始行,而不是行数。

Console.WriteLine(range.Cells[i, 2].Value2.ToString());

将所需的值写入控制台。

0 个答案:

没有答案