首页 > 解决方案 > 无法在 Visual C# 中读取 Excel 单元格值

问题描述

我阅读了如何读取单个 Excel 单元格值并自己尝试过。但是当我到达

string s = (myExcelWorkSheet.Cells[3, "E"] as Excel.Range).Value2.ToString();

一切都终止了,表格显示出来了。

//Everything worked fine here.
string s = (myExcelWorkSheet.Cells[3, "E"] as Excel.Range).Value2.ToString();
//Everything after this was all skipped!

为什么会这样,我该如何解决?

标签: c#excelinteropcell

解决方案


读取excel单元格的问题是,如果里面什么都没有,那么单元格对象就是Null. 因此,它既.Value2没有.Value.

要找到避免检查 的方法Null,您可以使用Convert.ToString()which 将 评估Null为空字符串,因此不会返回错误:

for (int i = 1; i < 5; i++)
{
    string a = Convert.ToString(wk.Cells[i, 1].Value2);
    Console.WriteLine(a);
}

推荐阅读