Buscar..


Introducción

El tema debe incluir información específicamente relacionada con los rangos con nombre en Excel, incluidos los métodos para crear, modificar, eliminar y acceder a los rangos con nombre definidos.

Definir un rango con nombre

El uso de rangos con nombre le permite describir el significado de los contenidos de una celda y usar este nombre definido en lugar de una dirección de celda real.

Por ejemplo, la fórmula =A5*B5 se puede reemplazar con =Width*Height para que la fórmula sea mucho más fácil de leer y entender.

Para definir un nuevo rango con nombre, seleccione la celda o celdas para nombrar y luego escriba el nuevo nombre en el Cuadro de nombre junto a la barra de fórmulas.

introduzca la descripción de la imagen aquí


Nota: Los rangos con nombre están predeterminados en el ámbito global, lo que significa que se puede acceder a ellos desde cualquier lugar dentro del libro de trabajo. Las versiones anteriores de Excel permiten nombres duplicados, por lo que se debe tener cuidado para evitar nombres duplicados de alcance global, de lo contrario los resultados serán impredecibles. Use el Administrador de nombres de la pestaña Fórmulas para cambiar el alcance.

Usando gamas nombradas en VBA

Crear un nuevo rango denominado 'MyRange' asignado a la celda A1

ThisWorkbook.Names.Add Name:="MyRange", _
    RefersTo:=Worksheets("Sheet1").Range("A1")

Eliminar el rango definido por nombre

ThisWorkbook.Names("MyRange").Delete

Acceso Rango Nombrado por nombre

Dim rng As Range
Set rng = ThisWorkbook.Worksheets("Sheet1").Range("MyRange")
Call MsgBox("Width = " & rng.Value)

Acceder a un rango con nombre con un acceso directo

Al igual que cualquier otro rango , se puede acceder directamente a los rangos con nombre mediante una notación de acceso directo que no requiere la creación de un objeto Range . Las tres líneas del extracto del código anterior se pueden reemplazar por una sola línea:

Call MsgBox("Width = " & [MyRange])

Nota: la propiedad predeterminada para un rango es su valor, por lo que [MyRange] es el mismo que [MyRange].Value

También puede llamar a los métodos en el rango. Lo siguiente selecciona MyRange :

[MyRange].Select

Nota: una advertencia es que la notación de acceso directo no funciona con palabras que se usan en otras partes de la biblioteca de VBA. Por ejemplo, un rango llamado Width no sería accesible como [Width] pero funcionaría como se espera si se accede a través de ThisWorkbook.Worksheets("Sheet1").Range("Width")

Administrar rango (s) con nombre usando el administrador de nombres

Pestaña Fórmulas> grupo Nombres definidos> botón Administrador de nombres

Named Manager le permite:

  1. Crear o cambiar nombre
  2. Crear o cambiar referencia de celda.
  3. Crear o cambiar alcance
  4. Eliminar el rango con nombre existente

introduzca la descripción de la imagen aquí


Named Manager proporciona una mirada rápida útil para enlaces rotos.

introduzca la descripción de la imagen aquí

Arreglos de rango con nombre

Hoja de ejemplo

introduzca la descripción de la imagen aquí


Código

Sub Example()
    Dim wks As Worksheet
    Set wks = ThisWorkbook.Worksheets("Sheet1")
    
    Dim units As Range
    Set units = ThisWorkbook.Names("Units").RefersToRange
    
    Worksheets("Sheet1").Range("Year_Max").Value = WorksheetFunction.Max(units)
    Worksheets("Sheet1").Range("Year_Min").Value = WorksheetFunction.Min(units)
End Sub

Resultado

introduzca la descripción de la imagen aquí



Modified text is an extract of the original Stack Overflow Documentation
Licenciado bajo CC BY-SA 3.0
No afiliado a Stack Overflow