EPPlus 将 Excel 的第一列读入数组

EPPlus To Read 1st Column Of Excel Into Array

OpenFileDialog与 EPPlus 结合使用。我得到一个编译错误:

The name 'sheet' does not exist in the current context

现在,明显的问题是如何将选定的 Excel 文件与我的 EPPPlus 相关联 & 2 如何消除上述错误?

using OfficeOpenXml;
using OfficeOpenXml.Drawing;

private void btn_ReadExcelToArray_Click(object sender, EventArgs e)
{
  fd.Filter = "Excel Files|*.xlsx";
  fd.InitialDirectory = @"C:\";
  if (fd.ShowDialog() == DialogResult.OK)
  {          
    var columnimport = sheet.Cells["A2:A"];
    foreach (var cell in columnimport)
    {
        var column1CellValue = cell.GetValue<string>();
    }
  }
}

你很接近。您所要做的就是基于流创建包(或者您可以使用 fileinfo 重载 - 无论哪种方式)。像这样:

var fd = new OpenFileDialog();
fd.Filter = "Excel Files|*.xlsx";
fd.InitialDirectory = @"C:\Temp\";

if (fd.ShowDialog() == DialogResult.OK)
{
    using (var package = new ExcelPackage(fd.OpenFile()))
    {
        var sheet = package.Workbook.Worksheets.First();
        var columnimport = sheet.Cells["A2:A"];
        foreach (var cell in columnimport)
        {
            var column1CellValue = cell.GetValue<string>();
        }
    }
}