使用EPPlus

时间:2017-05-31 10:29:22

标签: c# asp.net-mvc epplus

我使用EPplus导出excel.i必须给出一个组合框。目前我手动给出了范围。但是我想要整个列的下拉列表。任何人都可以告诉你如何做到这一点

ExcelPackage excel = new ExcelPackage();
 ExcelWorksheet P = excel.Workbook.Worksheets.Add("Pass");

 var droplist = P.DataValidations.AddListValidation("C2:C50000");   
 droplist.Formula.Values.Add("a");
 droplist.Formula.Values.Add("b");

1 个答案:

答案 0 :(得分:3)

以下行应该有效:

var droplist = P.DataValidations.AddListValidation("C:C");

修改

或者,您可以将ExcelRange设置为MaxRows。然后,您可以定义范围,然后跳过第一行或前n行。下面的代码跳过第一行:

var range = ExcelRange.GetAddress(2, 3, ExcelPackage.MaxRows, 3);
var val = p.DataValidations.AddListValidation(excelRange);

GetAddress的位置:

public static string GetAddress(int FromRow, int FromColumn, int ToRow, int ToColumn)

ExcelCellBase具有获取地址的扩展方法:GetAddress

ExcelPackage有一个公共const MaxRows (1048576)