Names 集合对象

         
Application
Workbooks (Workbook)
Names (Name)
Worksheets (Worksheet)
Names (Name)
Range
Name

应用程序或工作簿中所有 Name 对象的集合。每个 Name 对象代表一个单元格区域上的定义名。名称可为内置名称(如“Database”、“Print_Area”和“Auto_Open”)或自定义名称。

Names 集合对象的用法

可用 Names 属性返回 Names 集合。下例创建当前活动工作簿中所有名称及其引用地址的列表。

Set nms = ActiveWorkbook.Names
Set wks = Worksheets(1)
For r = 1 To nms.Count
    wks.Cells(r, 2).Value = nms(r).Name
    wks.Cells(r, 3).Value = nms(r).RefersToRange.Address
Next

可用 Add 方法创建名称并将其添加到集合中。下例创建指向工作表 Sheet1 上单元格区域 A1:C20 的新名称。

Names.Add Name:="test", RefersTo:="=sheet1!$a$1:$c$20"

RefersTo 参数必须以 A1-样式的记号指定,包括必要时使用的美元符 ($)。例如,如果在工作表 Sheet1 上选定了单元格 A10,然后又将 RefersTo 参数指定为“=Sheet1!A1:B1”而定义了一个名称,那么该名称实际上指向单元格区域 A10:B10(因为指定的是相对引用)。若要指定绝对引用,应当用“=Sheet1!$A$1:$B$1”。

可用 Names(index) 返回单个 Name 对象,其中 index 为名称的编号或定义名称。下例从当前活动工作簿上删除名称“mySortRange”。

ActiveWorkbook.Names("mySortRange").Delete