更改命名范围EPPlus

时间:2018-01-08 21:06:33

标签: c# excel epplus named-ranges

我正在使用EPPlus来填充excel文件,我有许多数据透视表在文件打开时刷新。

他们的来源始终是我的应用程序填充的两张纸之一。

问题是我每次填充时都有不同的行数, 我尝试在源代码中使用命名范围但是当我用EPPlus更改命名范围的范围时,它不起作用。

   epplusWs.Workbook.Names["named_range"].Address = "data_sheet!$A$1:$H$" + row.ToString();

2 个答案:

答案 0 :(得分:0)

这是一个较晚的答案,但是您可以添加一个新的范围如下的名称:

    ExcelNamedRange NR = new ExcelNamedRange("named_range", sheet: worksheet, nameSheet: worksheet, address: <your address string here>, index: 1);
    package.Workbook.Worksheets[1].Names.Add("named_range", NR);

答案 1 :(得分:0)

我找到了一种编辑现有方法的方法:

var range = epplusWs.Workbook.Names[rangeName];
range.Address = "YourNewRange";
epplusWs.Workbook.Names.Remove(rangeName);
epplusWs.Workbook.Names.Add(rangeName, range);