如何:向工作表添加 NamedRange 控件

更新: 2008 年 7 月

适用对象

本主题中的信息仅适用于指定的 Visual Studio Tools for Office 项目和 Microsoft Office 版本。

文档级项目

  • Excel 2007

  • Excel 2003

应用程序级项目

  • Excel 2007

有关更多信息,请参见按应用程序和项目类型提供的功能

在文档级项目中,可以在设计时和运行时向 Microsoft Office Excel 工作表添加 NamedRange 控件。

从 Visual Studio 2008 Service Pack 1 (SP1) 开始,在应用程序级外接程序项目中,您可以在运行时添加 NamedRange 控件。

本主题介绍了以下任务:

  • 在设计时添加 NamedRange 控件

  • 在运行时在文档级项目中添加 NamedRange 控件

  • 在运行时在应用程序级项目中添加 NamedRange 控件

有关 NamedRange 控件的更多信息,请参见 NamedRange 控件

在设计时添加 NamedRange 控件

有多种方法可用来在设计时在文档级项目中向工作表添加 NamedRange 控件:从 Excel 内添加,从 Visual Studio 的“工具箱”中添加,以及从“数据源”窗口中添加。

a0ytdsk6.alert_note(zh-cn,VS.90).gif说明:

对于在以下说明中使用的某些 Visual Studio 用户界面元素,您的计算机可能会显示不同的名称或位置。这些元素取决于您使用的 Visual Studio 版本及设置。有关更多信息,请参见Visual Studio 设置

在 Excel 中使用“名称框”向工作表添加 NamedRange 控件

  1. 选择要包括在命名范围中的单元格。

  2. 在“名称框”中键入一个范围名称并按 Enter。

    “名称框”位于编辑栏旁边,就在工作表的“A”列的上方。

使用“工具箱”向工作表添加 NamedRange 控件

  1. 打开“工具箱”,然后单击“Excel 控件”选项卡。

  2. 单击 NamedRange 并将其拖动到工作表中。

    随即出现“添加 NamedRange”对话框。

  3. 选择要包括在命名范围中的单元格。

  4. 单击“确定”。

    如果不希望控件使用默认名称,则可以在“属性”窗口中更改此名称。

使用“数据源”窗口向工作表中添加 NamedRange 控件

  1. 打开“数据源”窗口,为项目创建一个数据源。有关更多信息,请参见如何:连接到数据库中的数据

  2. 从“数据源”窗口中将一个字段拖到工作表中。

    一个绑定到数据的 NamedRange 控件即被添加到工作表中。有关更多信息,请参见数据绑定和 Windows 窗体

在运行时在文档级项目中添加 NamedRange 控件

您可以以编程方式在运行时将 NamedRange 控件添加到工作表中。这使您能够为响应事件而创建宿主控件。关闭工作表时,动态创建的命名范围不会像宿主控件一样保留在工作表中。有关更多信息,请参见在运行时向 Office 文档添加控件

以编程方式向工作表添加 NamedRange 控件

  • 在 Sheet1 的 Startup 事件处理程序中插入以下代码,以将 NamedRange 控件添加到单元格“A1”中,并将其 Value2 属性设置为 Hello world!

    Dim textInCell As Microsoft.Office.Tools.Excel.NamedRange
    textInCell = Me.Controls.AddNamedRange(Me.Range("A1"), "cellText")
    
    textInCell.Value2 = "Hello world!"
    
    Microsoft.Office.Tools.Excel.NamedRange textInCell;
    textInCell = this.Controls.AddNamedRange(this.get_Range("A1", missing), "cellText");
    
    textInCell.Value2 = "Hello world!";
    

在运行时在应用程序级项目中添加 NamedRange 控件

您可以以编程方式在应用程序级项目中向任何打开的工作表添加 NamedRange 控件。关闭工作表时,动态创建的命名范围不会像宿主控件一样保留在工作表中。有关更多信息,请参见在运行时在应用程序级外接程序中扩展 Word 文档和 Excel 工作簿

以编程方式向工作表添加 NamedRange 控件

  • 下面的代码生成一个基于打开的工作表的工作表宿主项,然后向“A1”单元格添加一个 NamedRange 控件并将其 Value2 属性设置为 Hello world。

    Private Sub AddNamedRange()
        Dim textInCell As Microsoft.Office.Tools.Excel.NamedRange
    
        Dim worksheet As Worksheet = CType(Application.ActiveWorkbook.Worksheets(1),  _
            Excel.Worksheet).GetVstoObject()
        Dim cell As Excel.Range = worksheet.Range("A1")
        textInCell = worksheet.Controls.AddNamedRange(cell, "MyNamedRange")
        textInCell.Value2 = "Hello World"
    End Sub
    
    private void AddNamedRange()
    {
        Microsoft.Office.Tools.Excel.NamedRange textInCell;
    
        Worksheet worksheet =
            ((Excel.Worksheet)Application.
                  ActiveWorkbook.Worksheets[1]).GetVstoObject();
        Excel.Range cell = worksheet.Range["A1", missing]; 
        textInCell = worksheet.Controls.AddNamedRange(cell, "MyNamedRange");
        textInCell.Value2 = "Hello World";
     }
    

请参见

任务

如何:在设计时删除 NamedRange 控件

如何:调整 NamedRange 控件的大小

概念

在运行时在应用程序级外接程序中扩展 Word 文档和 Excel 工作簿

Excel 应用程序级外接程序开发

NamedRange 控件

宿主项和宿主控件概述

宿主项和宿主控件的编程限制

其他资源

Office 文档上的控件

Excel 宿主控件

修订记录

日期

历史记录

原因

2008 年 7 月

增加了说明如何在应用程序级外接程序中向工作表添加命名范围控件的一节。

SP1 功能更改。