Classe Name (Excel VBA)

A classe Name representa um nome definido para um intervalo de células. Os nomes podem ser nomes internos, como banco de dados, Print_Area e Auto_Open, ou nomes personalizados.

Os principais procedimentos da classe Name são Delete e Names.Add

Set

Para usar uma variável de classe Name, ela primeiro precisa ser instanciada por exemplo

Dim nam as Name
Set nam = ActiveWorkbook.Names(Index:=1)

Os procedimentos a seguir podem ser usados ​​para definir variáveis ​​do tipo Name: Names.Item, Names.Add, Application.Names, Workbook.Names e Worksheet.Names

For Each

Aqui está um exemplo de processamento dos itens Name em uma coleção.

Set newSheet = Worksheets.Add 
i = 1 
For Each nm In ActiveWorkbook.Names 
 newSheet.Cells(i, 1).Value = nm.Name 
 newSheet.Cells(i, 2).Value = "'" & nm.RefersTo 
 i = i + 1 
Next 
newSheet.Columns("A:B").AutoFit

Métodos

Estes são os principais métodos da classe Name

Delete - Exclui o objeto.

ActiveWorkbook.Names(1).Delete

Names.Add - Define um novo nome para um intervalo de células.

Dim nam As Name
Set nam = ActiveWorkbook.Names.Add

Estes são os principais métodos da classe

Names.Item - Retorna um único objeto Name de uma coleção Names .

Propriedades

Category Retorna ou define a categoria para o nome especificado na linguagem da macro. O nome precisa referir-se a um comando ou a uma função personalizada. String de leitura/gravação.

ActiveWorkbook.Names(1).Category =

CategoryLocal Retorna ou define a categoria para o nome especificado, no idioma do usuário, se o nome se referir a uma função ou comando personalizado. String de leitura/gravação.

ActiveWorkbook.Names(1).CategoryLocal =

Comment Retorna ou define o comentário associado ao nome. String de leitura/gravação.

ActiveWorkbook.Names(1).Comment =

Index Retorna um valor Long que representa o número de índice do objeto dentro da coleção de objetos semelhantes.

Dim lngIndex As Long
lngIndex = ActiveWorkbook.Names(1).Index

MacroType Retorna ou define a que se refere o nome. Leitura/gravação XlXLMMacroType.

ActiveWorkbook.Names(1).MacroType = xlCommand

Name Retorna ou define um valor String que representa o nome do objeto.

ActiveWorkbook.Names(1).Name =

NameLocal Retorna ou define o nome do objeto, no idioma do usuário. String de leitura/gravação.

ActiveWorkbook.Names(1).NameLocal =

Parent Retorna o objeto pai do objeto especificado. Somente leitura.

Dim objParent As Object
Set objParent = ActiveWorkbook.Names(1).Parent

RefersTo Retorna ou define a fórmula à qual o nome está definido para se referir, na linguagem da macro e em notação de estilo A1, começando com um sinal de igual. String de leitura/gravação.

ActiveWorkbook.Names(1).RefersTo =

RefersToLocal Retorna ou define a fórmula à qual o nome se refere. A fórmula está no idioma do usuário e em notação de estilo A1, começando com um sinal de igual. String de leitura/gravação.

ActiveWorkbook.Names(1).RefersToLocal =

RefersToR1C1 Retorna ou define a fórmula à qual o nome se refere. A fórmula está no idioma da macro e em notação de estilo R1C1, começando com um sinal de igual. String de leitura/gravação.

ActiveWorkbook.Names(1).RefersToR1C1 =

RefersToR1C1Local Retorna ou define a fórmula à qual o nome se refere. Essa fórmula está no idioma do usuário e em notação de estilo L1C1, começando com um sinal de igual. String de leitura/gravação.

ActiveWorkbook.Names(1).RefersToR1C1Local =

RefersToRange Retorna o objeto Range referido por um objeto Name . Somente leitura.

Dim rngRefersToRange As Range
Set rngRefersToRange = ActiveWorkbook.Names(1).RefersToRange

ShortcutKey Retorna ou define a tecla de atalho para um nome definido em um comando de macro personalizado do Microsoft Excel 4.0. String de leitura/gravação.

ActiveWorkbook.Names(1).ShortcutKey = "K"

ValidWorkbookParameter Retorna True se o objeto Name especificado for um parâmetro de pasta de trabalho válido. Boolean somente leitura.

Dim booValidWorkbookParameter As Boolean
booValidWorkbookParameter = ActiveWorkbook.Names(1).ValidWorkbookParameter

Value Retorna ou define um valor String que representa a fórmula à qual o nome está definido para fazer referência.

ActiveWorkbook.Names(1).Value =

Visible Retorna ou define um valor Boolean que determina se o objeto será visível. Leitura/gravação.

ActiveWorkbook.Names(1).Visible = True

WorkbookParameter Retorna ou define o objeto Name especificado como um parâmetro de pasta de trabalho. Leitura/gravação.

ActiveWorkbook.Names(1).WorkbookParameter = True

Names.Count Retorna um valor Long que representa o número de objetos na coleção.

Dim lngCount As Long
lngCount = ActiveWorkbook.Names.Count

Names.Parent Retorna o objeto pai do objeto especificado. Somente leitura.

Dim objParent As Object
Set objParent = ActiveWorkbook.Names.Parent