如何使用NPOI按地址(A1,A2)获取Excel单元格值

我有一个Excel单元格地址,如A1,A2。 如何使用C#中的NPOI框架以编程方式访问此单元?

我找到了一些Java POI示例代码:

CellReference cr = new CellReference("A1"); row = mySheet.getRow(cr.getRow()); cell = row.getCell(cr.getCol()); 

您找到的Java代码将1:1转换为C#:

  • 首先,将单元格描述(A1)转换为CellReference
  • 使用CellReference中的RowCol查找实际单元格。

这是一些示例代码

 var workbook = new XSSFWorkbook(stream); var sheet = workbook.GetSheetAt(0); var cr = new CellReference("D5"); var row = sheet.GetRow(cr.Row); var cell = row.GetCell(cr.Col); Console.Write(cell.StringCellValue); 

请注意,引用单元格将导致exception。 Excel不会在内部存储未使用的单元格,并且(N)POI不会尝试向开发人员隐藏该事实。