使用EPPlus和Linq从excel获取单元格值

时间:2012-12-13 10:13:31

标签: c# linq epplus

是否可以使用EPPlus和Linq从excel表中获取单元格值? 例如:

我有一张包含3列的Excel工作表

Column 1 = Userid
Column 2 = Email address
Column 3 = Full name

现在我想返回电子邮件地址,其中 userid = x

我希望现在更清楚了。

2 个答案:

答案 0 :(得分:3)

不完全确定您要执行的操作,以下是从单元格中获取值的示例:

  excelPackage.Workbook.Worksheets
                .FirstOrDefault(w => w.Name == "Your Worksheet Name")
                .Cells.FirstOrDefault(c => c.Address == "Your Cell Address").Value;

确保使用System.Linq命名空间

答案 1 :(得分:3)

假设Column 1aColumn 2b

var sheet = excelPackage.Workbook.Worksheets[sheetname_orSheetIndex];
var objs = from cell in sheet.Cells["a:a"]        // a:a is the column a, Userid
           where cell.Value.ToString().Equals(x)  // x is the input userid
           select sheet.Cells[cell.Start.Row, 2]; // 2 is column b, Email Address

它会起作用! 编辑:它将返回ExcelRange的集合。