0

您好我正在尝试将特定 excel 单元格的值导入表单上的文本框。该值将在表单加载后立即出现。现在这个单元格可以为空,我正在处理空值,但每次传递空值时它都会抛出异常并进入捕获状态。这是我的代码片段:

try
{
    var v;
    if( oSheet.Cells[3, 4].Value2 != null)
    {
        v = Sheet.Cells[3, 4].Value2; 
        var s = Convert.ToString(v);
        textBox1 = string.Format("{0:N2}", s);
    } 
    else 
    { 
        v = 0;
        var s = Convert.ToString(v);
        textBox1 = string.Format("{0:N2}", v);
    } 
}
catch(Exception)   
{
    string errorMessage = "Data cannot be retrieved from the strats file ;
    MessageBox.Show(errorMessage);
}

捕获显示此异常“对象引用未设置为对象的实例”。我正在照顾或 null oSheet.Range.Value2,那么为什么它一到达 if 语句就会抛出错误?有人可以帮助我几天以来对这个问题感到沮丧

4

1 回答 1

0

你初始化“oSheet”对象了吗?

if( oSheet.Cells[3, 4].Value2 != null)
{
//I think you have a spelling mistake,    oSheet.Cells[3, 4] vs Sheet.Cells[3,4] 
    v = Sheet.Cells[3, 4].Value2; 
....
}
于 2013-04-25T03:46:12.067 回答