Learn About Creating VBA Named Ranges in Excel

Excel es su herramienta de productividad definitiva. Aprenda a crear rangos con nombre en Excel usando VBA y encuentre sugerencias para ahorrar tiempo al trabajar con datos y fórmulas.
Learn About Creating VBA Named Ranges in Excel

Excel es su herramienta de productividad definitiva. Aprenda a crear rangos con nombre en Excel usando VBA y encuentre sugerencias para ahorrar tiempo al trabajar con datos y fórmulas.

Microsoft Excel es una poderosa aplicación de software que puede utilizar para crear, rastrear y analizar datos. Además de las funciones estándar de Excel, también puedes crear macros VBA para automatizar determinadas tareas.

¿Está buscando aprender sobre cómo crear rangos con nombre y usar macros VBA en Excel? Si es así, usted ha venido al lugar correcto. En esta publicación de blog, discutiremos cómo crear rangos con nombre en Excel usando VBA.

También proporcionaremos algunos ejemplos de cómo puede utilizar rangos con nombre en su propio trabajo. ¡Empecemos!

¿Qué es un rango con nombre en Microsoft Excel?

Utilizando un rango con nombre en lugar de una referencia de columna/fila, puede hacer referencia a una celda o grupo de celdas con un nombre personalizado. La capacidad de especificar los datos dentro de sus celdas es una gran ventaja de utilizar rangos con nombre.

Aquí hay un ejemplo rápido de cómo puede usar rangos con nombre para saber si los costos de envío se cargan con el precio del producto:

  1. = (B7 + B5 * C4) * (1 + A3)
  2. =(Cargo de envío + Precio del producto * Cantidad) * (1 + Tasa impositiva)

La opción número dos, como puedes ver, te da una indicación inmediata de si el precio de los productos incluye los gastos de envío. Esto hace que al usuario le resulte sencillo comprender cómo funciona la fórmula sin tener que perder el tiempo mirando las celdas para descubrir qué es qué.

¿Cómo utilizar rangos con nombre en Excel?

Como analista financiero, es posible que se espere que experimente con varias tasas. Se podría utilizar como ejemplo cualquier cosa, desde una tasa impositiva hasta una tasa de inflación proyectada. Puede utilizar rangos con nombre para organizar variables que rara vez se modifican (como mes o año) o que permanecerán estáticas durante un período prolongado (como la tasa de inflación).

Aquí hay una lista de nombres comunes que puede usar con frecuencia cuando trabaja con rangos con nombre en Excel:

  • Fecha del informe
  • Año
  • Mes
  • FcstID
  • Tasa impositiva
  • Datos sin procesar

Estas son sólo algunas de las posibilidades: puede nombrar un rango de cualquier cosa que desee que cumpla con las reglas de Excel para rangos con nombre.

Crear nombres únicos

Crear un rango con nombre es muy sencillo. Todo lo que tiene que hacer ahora es seleccionar las celdas a las que desea hacer referencia y escribir un nombre en el cuadro de nombre.

Debido a que su nombre no puede contener espacios, debe escribir en mayúscula la primera letra de cada palabra nueva o usar un guión bajo (_) para separar los términos. Para finalizar el establecimiento del rango con nombre, presione la tecla ENTRAR después de haber terminado de escribir el nombre.

Nota: Cualquier rango con nombre establecido con el cuadro de nombre tiene un alcance de libro de trabajo. Esto significa que cualquier hoja de cálculo de su archivo de Excel puede acceder al rango nombrado.

Creación de nombres utilizando el Administrador de nombres

Puede cambiar y crear nuevos rangos con nombre en el Administrador de nombres (pestaña Fórmulas > grupo Nombres definidos > botón Administrador de nombres) si desea personalizar aún más sus rangos con nombre.

Debe tener en cuenta que el Administrador de nombres le permite:

  • Cambiar el nombre de un rango con nombre que ya existe,
  • Hacer un cambio en la fórmula de referencia,
  • Defina el alcance de las hojas de trabajo a las que se puede acceder al nombre.

Ahora que comprende qué es un rango con nombre y cómo crear uno, veamos algunos ejemplos prácticos de cómo puede usarlos en su trabajo.

Ejemplos prácticos de cómo utilizar rangos con nombre

Ejemplo 1: creación de un rango dinámico

Un rango dinámico es un rango con nombre que se ajusta automáticamente para incluir nuevos datos que se agregan a la hoja de trabajo. Esta es una excelente manera de ahorrar tiempo cuando sus datos cambian con frecuencia.

Ejemplo 2: creación de un rango 3D

Un rango 3D es un rango con nombre que hace referencia a datos en varias hojas de trabajo. Esto puede suponer un gran ahorro de tiempo si trabaja con grandes cantidades de datos organizados de forma similar en varias hojas de trabajo.

Ejemplo 3: creación de una matriz con nombre

Una matriz con nombre es un tipo de rango dinámico que hace referencia a una matriz de valores. Esta puede ser una excelente manera de hacer referencia a datos organizados en formato de tabla.

Automatizar rangos con nombre con macros de VBA

Ahora que hemos repasado rápidamente los rangos con nombre, veamos algunas macros de VBA que pueden ayudarle a automatizar su uso.

Agregar un rango con nombre

El código VBA siguiente demuestra cómo construir varios tipos de rangos con nombre.

SubNombreRange_Add()

'PROPÓSITO: Varias formas de crear un rango con nombre

'FUENTE: SoftwareKeep.es


Atenuar celda como rango

Rango de atenuación como rango

Atenuar nombre de rango como cadena

Atenuar nombre de celda como cadena


'Referencia de celda única (ámbito del libro de trabajo)

Nombre del rango = "Precio"

Nombre de celda = "D7"

Establecer celda = Hojas de trabajo("Hoja1").Rango(Nombre de celda)

Este libro de trabajo.NombresAgregar nombre:=Nombre del rango, se refiere a:=celda



'Referencia de celda única (alcance de la hoja de trabajo)

Nombre del rango = "Año"

Nombre de celda = "A2"

Establecer celda = Hojas de trabajo("Hoja1").Rango(Nombre de celda)

Hojas de trabajo("Hoja1").NombresAgregar nombre:=Nombre del rango, se refiere a:=celda



'Referencia de rango de celdas (alcance del libro de trabajo)

NombreRango = "misDatos"

Nombre de celda = "F9:J18"

Establecer celda = Hojas de trabajo("Hoja1").Rango(Nombre de celda)

Este libro de trabajo.NombresAgregar nombre:=Nombre del rango, se refiere a:=celda



'Rango con nombre secreto (no aparece en el Administrador de nombres)

RangeName = "Nombre de usuario"

Nombre de celda = "L45"

Establecer celda = Hojas de trabajo("Hoja1").Rango(Nombre de celda)

Este libro de trabajo.NombresAgregar nombre:=Nombre de rango, Se refiere a:=celda, Visible:=Falso


Fin del subtítulo

Recorrido en bucle por rangos con nombre

El siguiente código de macro de VBA demuestra cómo recorrer los rangos con nombre de su hoja de cálculo.

Sub NamedRange_Loop()

'PROPÓSITO: Eliminar todos los rangos con nombre en el libro activo

'FUENTE: SoftwareKeep.es


Atenuar nm como nombre


'Recorre cada rango con nombre en el libro de trabajo

Para cada nm en ActiveWorkbook.Nombres

Depurar.Imprimir nm.Nombre, nm.Se refiere a

Siguiente nm

'Recorre cada rango con nombre dentro del ámbito de una hoja de trabajo específica

Para cada nm en hojas de trabajo ("Hoja1").Nombres

Depurar.Imprimir nm.Nombre, nm.Se refiere a

Siguiente nm


Fin del subtítulo

Eliminar todos los rangos con nombre

Esta función de VBA le ayudará a limpiar una gran cantidad de rangos con nombre en Excel que ya no necesita en su proyecto.

Sub NamedRange_DeleteAll()

'PROPÓSITO: Eliminar todos los rangos con nombre en ActiveWorkbook (áreas de impresión opcionales)

'FUENTE: SoftwareKeep.es


Atenuar nm como nombre

Atenuar el recuento de eliminación mientras


'¿Eliminar PrintAreas también?

UserAnswer = MsgBox("¿Desea omitir las áreas de impresión?", vbYesNoCancel)

Si UserAnswer = vbYes Entonces SkipPrintAreas = True

Si UserAnswer = vbCancel, entonces salga de Sub


'Manejador de errores en caso de que se produzcan errores en la función de eliminación

En caso de error Ir a Saltar


'Recorre cada nombre y elimina

Para cada nm en ActiveWorkbook.Nombres

Si SkipPrintAreas = Verdadero y correcto(nm.Nombre, 10) = "Print_Area" Luego Ir a Saltar

'Manejador de errores en caso de que se produzcan errores en la función de eliminación

En caso de error Ir a Saltar

'Eliminar rango con nombre

nm.Eliminar

EliminarContar = EliminarContar + 1

Saltar:

'Restablecer controlador de errores

En caso de error Ir a 0

Siguiente

'Resultado del informe

Si DeleteCount = 1 Entonces

MsgBox "El nombre [1] fue eliminado de este libro."

Más

Los nombres de MsgBox "[" & DeleteCount & "] se eliminaron de este libro."

Finalizar si


Fin del subtítulo

Eliminar rangos con nombre con errores

Solo los rangos con nombre con fallas se eliminarán con este código VBA. Estos problemas pueden deberse a la eliminación de hojas de trabajo o filas/columnas.

Sub NamedRange_DeleteErrors()

'PROPÓSITO: Eliminar todos los rangos con nombre con el error #REF en ActiveWorkbook

'FUENTE: SoftwareKeep.es


Atenuar nm como nombre

Atenuar el recuento de eliminación mientras


'Recorre cada nombre y elimina

Para cada nm en ActiveWorkbook.Nombres

Si InStr(1, nm.Se refiere a "#REF!") > 0 Entonces

'Manejador de errores en caso de que se produzcan errores en la función de eliminación

En caso de error Ir a Saltar

'Eliminar rango con nombre

nm.Eliminar

EliminarContar = EliminarContar + 1

Finalizar si

Saltar:

'Restablecer controlador de errores

En caso de error Ir a 0

Siguiente

'Resultado del informe

Si DeleteCount = 1 Entonces

MsgBox "[1] el nombre del error fue eliminado de este libro."

Más

MsgBox "[" & DeleteCount & "] Los nombres de errores se eliminaron de este libro."

Finalizar si

Fin del subtítulo

TL;DR

  • Los rangos con nombre son una excelente manera de organizar sus datos en Excel.
  • Puede usarlos para crear rangos dinámicos, rangos 3D y matrices con nombre.
  • También puede automatizar el uso de rangos con nombre con macros de VBA.

Conclusión

Excel es una herramienta increíble que puede hacer que incluso las tareas más mundanas sean emocionantes de completar con amplias funciones de automatización. Si desea hacer su vida más fácil, aprender a trabajar con herramientas avanzadas como Named Ranges con VBA es una excelente manera de comenzar.

Esperamos que este artículo le haya ayudado a aprender un poco más sobre cómo usar rangos con nombre en Excel. Como siempre, si tienes alguna pregunta, ¡no dudes en dejarnos un comentario a continuación!

Gracias por leer.

Una cosa más

¿Busca más consejos? Consulte nuestras otras guías en nuestro Blog o visite nuestro Centro de ayuda para una gran cantidad de información sobre cómo solucionar diversos problemas.

Suscríbase a nuestro boletín y acceda temprano a nuestras publicaciones de blog, promociones y códigos de descuento. Además, ¡serás el primero en enterarte de nuestras últimas guías, ofertas y otras interesantes actualizaciones!

Artículos recomendados

» Cómo agregar y eliminar ceros a la izquierda en Excel
» Cómo utilizar fórmulas “Si la celda contiene” en Excel
» Cómo bloquear y desbloquear el bloqueo de desplazamiento en Excel?

No dude en comuníquese con si tiene preguntas o solicitudes que le gustaría que cubrimos.