C# EPPlus将Excel的第一列读入数组

C# EPPlus将Excel的第一列读入数组,c#,epplus-4,C#,Epplus 4,与ePlus一起使用OpenFileDialog。我得到一个编译错误: 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, EventA

与ePlus一起使用
OpenFileDialog
。我得到一个编译错误:

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>();
    }
  }
}
使用OfficeOpenXml;
使用OfficeOpenXml.Drawing;
私有void btn\u ReadExcelToArray\u单击(对象发送方,事件参数e)
{
fd.Filter=“Excel文件|*.xlsx”;
fd.InitialDirectory=@“C:\”;
如果(fd.ShowDialog()==DialogResult.OK)
{          
var columnimport=表单元格[“A2:A”];
foreach(columnimport中的var单元格)
{
var column1CellValue=cell.GetValue();
}
}
}

你已经很接近了。您所要做的就是基于流创建包(或者您可以使用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>();
        }
    }
}
var fd=new OpenFileDialog();
fd.Filter=“Excel文件|*.xlsx”;
fd.InitialDirectory=@“C:\Temp\”;
如果(fd.ShowDialog()==DialogResult.OK)
{
使用(var package=new ExcelPackage(fd.OpenFile()))
{
var sheet=package.Workbook.Worksheets.First();
var columnimport=表单元格[“A2:A”];
foreach(columnimport中的var单元格)
{
var column1CellValue=cell.GetValue();
}
}
}