C# 更改Excel的命名区域
1、可通婶篇过E-iceblue官网或者Nuget下荡著载Free Spire.XLS,下载后解压安装,在编盯良爹辑代码时,注意在程序中引用Spire.Xls.dll(如下图),dll文件可在安装路径下的Bin文件夹中获取。

1、测试文档:

2、C#代码:
using Spire.Xls;
using Spire.Xls.Core;
namespace ModifyNameRange_XLS
{
class Program
{
static void Main(string[] args)
{
//创建文档,加载测试文件
Workbook wb = new Workbook();
wb.LoadFromFile("sample.xlsx");
//获取第一张工作表
Worksheet sheet = wb.Worksheets[0];
//获取表格中的指定命名区域
INamedRange namedRange = wb.NameRanges.GetByName("第1批次入库量");//适用于全局命名区域(整个工作簿)
//INamedRange namedRange = sheet.Names.GetByName("第2批次入库量");//适用于局部命名区域(指定工作表)
//修改命名区域的名称和引用单元格区域
namedRange.Name = "newrange";
namedRange.RefersToRange = wb.Worksheets[0].Range["G3:G7"];//适用于全局命名区域(整个工作簿)
//namedRange.RefersToRange = sheet.Range["D3:D8"];//适用于局部命名区域(指定工作表)
//获取指定命名区域,并设置区域名称隐藏
namedRange = wb.NameRanges.GetByName("第2批次入库量");
namedRange.Visible = false;
////删除文档中的指定命名区域的名称
//wb.NameRanges.Remove("RangeName");//适用于全局命名区域(整个工作簿)
////sheet.Names.Remove("RangeName");//适用于局部命名区域(指定工作表)
//保存文档
wb.SaveToFile("newresult.xlsx", FileFormat.Version2010);
System.Diagnostics.Process.Start("newresult.xlsx");
}
}
}
3、完成代码后,运行程序,生成文档(如下图),查看命名区域更改效果:
