我使用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");
答案 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)