EPPlus – 命名范围未填充

我正在使用EPPLus打开Excel电子表格并尝试从命名范围读取。 命名范围是空的。

我使用这个错误,还是EPPlus的问题

var package = new ExcelPackage(); using (var stream = File.OpenRead(tmpExcel)) { package.Load(stream); } var worksheet = package.Workbook.Worksheets["Common-Lookup"]; using (ExcelNamedRange namedRange = worksheet.Names["LupVerticalSettings"]) { for (var row = namedRange.Start.Row; row <= namedRange.End.Row; row++) { for (var col = namedRange.Start.Column; col <= namedRange.End.Column; col++) { _.Nv(worksheet.Cells[row, col].Address, worksheet.Cells[row, col].Text); //worksheet.Cells[rowIndex, columnIndex].Value = "no more hair pulling"; } } } 

Excel看起来像这样

Excel命名范围

空的命名范围

空的命名范围

我解决了我的问题,我将在这里为任何可能需要它的人提供答案

  var package = new ExcelPackage(); using (var stream = File.OpenRead(tmpExcel)) { package.Load(stream); } var worksheet = package.Workbook.Worksheets["Common-Lookup"]; // Access Named Ranges from the ExcelWorkbook instead of ExcelWorksheet //using (ExcelNamedRange namedRange = worksheet.Names["LupVerticalSettings"]) // use package.Workbook.Names instead of worksheet.Names using (ExcelNamedRange namedRange = package.Workbook.Names["LupVerticalSettings"]) { for (var row = namedRange.Start.Row; row <= namedRange.End.Row; row++) { for (var col = namedRange.Start.Column; col <= namedRange.End.Column; col++) { _.Nv(worksheet.Cells[row, col].Address, worksheet.Cells[row, col].Text); //worksheet.Cells[rowIndex, columnIndex].Value = "no more hair pulling"; } } }