如何在 C# 中管理 Excel 命名范围

如何在C#中使用IronXL添加命名范围

This article was translated from English: Does it need improvement?
Translated
View the article in English

命名区域是指由唯一名称标识的指定单元格区域。 你可以给一个区域指定一个名称,而不是通过单元格地址(例如 A1:B10)来引用它,这样在公式和函数中更容易引用和理解它。 例如,如果您将某个区域命名为"SalesData",则可以在类似SUM(SalesData)的公式中引用它,而无需直接指定单元格区域。

快速入门:使用 IronXL 一行添加命名范围

以下是如何使用 IronXL 立即定义命名范围的方法——超级简单,零麻烦。 只需选择范围并调用该方法即可; 你很快就能开始工作了。

Nuget Icon立即开始使用 NuGet 创建 PDF 文件:

  1. 使用 NuGet 包管理器安装 IronXL

    PM > Install-Package IronXL.Excel

  2. 复制并运行这段代码。

    new IronXL.WorkBook()
        .DefaultWorkSheet["A1:B2"].SaveAsNamedRange("MyRange", true);
  3. 部署到您的生产环境中进行测试

    立即开始在您的项目中使用 IronXL,免费试用!
    arrow pointer


添加命名范围示例

要添加命名范围,请使用AddNamedRange方法,并将命名范围的名称作为文本传递给该范围对象。

:path=/static-assets/excel/content-code-examples/how-to/named-range-add-named-range.cs
using IronXL;

WorkBook workBook = WorkBook.Create();
WorkSheet workSheet = workBook.DefaultWorkSheet;

// Select range
var selectedRange = workSheet["A1:A5"];

// Add named range
workSheet.AddNamedRange("range1", selectedRange);

workBook.SaveAs("addNamedRange.xlsx");
Imports IronXL

Private workBook As WorkBook = WorkBook.Create()
Private workSheet As WorkSheet = workBook.DefaultWorkSheet

' Select range
Private selectedRange = workSheet("A1:A5")

' Add named range
workSheet.AddNamedRange("range1", selectedRange)

workBook.SaveAs("addNamedRange.xlsx")
$vbLabelText   $csharpLabel
命名范围

检索命名范围示例

检索所有已命名范围

GetNamedRanges方法将返回工作表中所有已命名的区域,并以字符串列表的形式返回。

:path=/static-assets/excel/content-code-examples/how-to/named-range-retrieve-all-named-range.cs
using IronXL;

WorkBook workBook = WorkBook.Load("addNamedRange.xlsx");
WorkSheet workSheet = workBook.DefaultWorkSheet;

// Get all named range
var namedRangeList = workSheet.GetNamedRanges();
Imports IronXL

Private workBook As WorkBook = WorkBook.Load("addNamedRange.xlsx")
Private workSheet As WorkSheet = workBook.DefaultWorkSheet

' Get all named range
Private namedRangeList = workSheet.GetNamedRanges()
$vbLabelText   $csharpLabel

检索特定命名范围

使用FindNamedRange方法检索命名区域的绝对引用,例如Sheet1!$A$1:$A$5 。 然后可以使用地址公式来引用命名范围,或者选择与命名范围对应的范围。 选择区域时,请注意工作表名称。

:path=/static-assets/excel/content-code-examples/how-to/named-range-retrieve-specific-named-range.cs
using IronXL;

WorkBook workBook = WorkBook.Load("addNamedRange.xlsx");
WorkSheet workSheet = workBook.DefaultWorkSheet;

// Get named range address
string namedRangeAddress = workSheet.FindNamedRange("range1");

// Select range
var range = workSheet[$"{namedRangeAddress}"];
Imports IronXL

Private workBook As WorkBook = WorkBook.Load("addNamedRange.xlsx")
Private workSheet As WorkSheet = workBook.DefaultWorkSheet

' Get named range address
Private namedRangeAddress As String = workSheet.FindNamedRange("range1")

' Select range
Private range = workSheet($"{namedRangeAddress}")
$vbLabelText   $csharpLabel

删除命名范围示例

要删除命名范围,请使用RemoveNamedRange方法,并将命名范围名称作为文本传递。

:path=/static-assets/excel/content-code-examples/how-to/named-range-remove-named-range.cs
using IronXL;

WorkBook workBook = WorkBook.Load("addNamedRange.xlsx");
WorkSheet workSheet = workBook.DefaultWorkSheet;

// Remove named range
workSheet.RemoveNamedRange("range1");
Imports IronXL

Private workBook As WorkBook = WorkBook.Load("addNamedRange.xlsx")
Private workSheet As WorkSheet = workBook.DefaultWorkSheet

' Remove named range
workSheet.RemoveNamedRange("range1")
$vbLabelText   $csharpLabel

常见问题解答

如何在Excel中使用C#创建命名范围?

您可以通过利用AddNamedRange方法在Excel中使用C#和IronXL创建命名范围。首先,从NuGet下载IronXL库。然后,使用workSheet["A1:A5"]选择目标单元格范围,并将其与名称一起传递给AddNamedRange方法。

在Excel中使用命名范围的目的是什么?

Excel中的命名范围允许您为一组单元格分配一个唯一名称,便于在公式和函数中引用。这提高了可读性并减少错误,因为可以使用类似'SalesData'这样的名称而不是单元格引用如'A1:B10'。

如何在C#中从工作表检索所有命名范围?

您可以使用IronXL的GetNamedRanges方法在C#中从工作表中检索所有命名范围,该方法返回工作表中所有命名范围的字符串列表。

我可以从Excel工作表中检索特定的命名范围吗?

是的,要从Excel工作表中使用IronXL检索特定命名范围,可以使用FindNamedRange方法。此方法为您提供命名范围的绝对引用,例如Sheet1!$A$1:$A$5

在C#中删除命名范围我应该使用什么方法?

要在C#中删除命名范围,使用IronXL的RemoveNamedRange方法。将命名范围的名称作为参数传递给此方法即可删除它。

开发人员如何从使用IronXL管理命名范围中受益?

使用IronXL管理命名范围可以简化创建、检索和删除命名范围等任务。这提高了Excel文件的清晰度和可维护性,使在C#应用程序中更容易管理单元格引用。

我如何开始使用IronXL进行Excel处理的C#?

要开始使用IronXL进行Excel处理的C#,请从NuGet包管理器下载IronXL库。然后,使用提供的方法如AddNamedRangeGetNamedRangesRemoveNamedRange有效地管理命名范围。

Chaknith Bin
软件工程师
Chaknith 在 IronXL 和 IronBarcode 工作。他在 C# 和 .NET 方面有着深厚的专业知识,帮助改进软件并支持客户。他从用户互动中获得的见解有助于更好的产品、文档和整体体验。
准备开始了吗?
Nuget 下载 1,738,553 | Version: 2025.11 刚刚发布