首页 > 解决方案 > 读取 Excel 文件中的单元格时未设置对象引用

问题描述

我正在使用 Excel.dll,它是在线提供的 excel 阅读器(不是 Microsoft.Office.Intertop.Excel)来读取具有多条记录的 excel

这是我的代码-

 Try
 {
       string path = "somelocalpath";
       foreach (var worksheet in Workbook.Worksheets(path))
       {
              //Some code
       }
 }
 catch (Exception e)
 {
       return false;
 }

在这里,我在 Workbook.Worksheets(path) 的第一次迭代中遇到异常。在给定的本地路径中有可用的 excel 工作表(工作表有三列和三行,其中第一行是标题行。)。

此外,根据我的理解,它在一段时间内没有出现任何错误,问题不在于代码,而可能是我不确定的工作表格式。

有人可以帮我解决这个问题。

标签: c#.netexcelnullreferenceexception

解决方案


您需要打开文件并将工作表加载到您的范围对象。像这样的东西:

Excel.Application xlApp = new Excel.Application();
Excel.Workbook xlWorkbook = xlApp.Workbooks.Open(@"myexcelfile.xlsx");
Excel._Worksheet xlWorksheet = xlWorkbook.Sheets[1];
Excel.Range xlRange = xlWorksheet.UsedRange;

初始化后,您可以在 foreach 中使用您的范围


推荐阅读