4 d’abril del 2007

Macros Excel: Actualizar nombres de rango

Un Rango en Excel es un conjunto de celdas continuo. Muchas veces trabajamos con datos que están localizados en un área determinada de la hoja de trabajo y que cumplen esta característica, son datos continuos (es decir, no tienen una columna o fila completamente en blanco).
Cuando utilizamos funciones o herramientas como las tablas dinámicas, tener que buscar cada vez las referencias de esas celdas es bastante molesto, para simplificarlo seleccionamos ese conjunto de datos y le ponemos un nombre.
La forma más académica de definir un rango es:
  • Situarse en la primera celda del rango
  • Buscar la última celda y hacer un clic teniendo apretada la tecla Mayúsculas (yo prefiero hacer Control+* , y seleccionará todo el rango)
  • Ir al menú Insertar, Nombre, Definir y ponerle un nombre al conjunto de celdas (o hacer un clic en el cuadro de nombres, poner un nombre y apretar Intro).

El problema viene cuando estamos trabajando con una tabla que puede crecer. Muchas veces acaba pasando que el Rango no está haciendo referencia a todas las celdas que debería. Hay varias formas de solucionarlo, por ejemplo hay quien hace el rango mucho más grande, dejando filas en blanco por debajo, pero eso puede dar problemas al trabajar con Tablas dinámicas o con fórmulas 3D, pues lo que estamos haciendo es inflar lo que acabará ocupando ese archivo.

La opción que suelo utilizar es poner un pequeño botón que ejecute una macro que actualice el nombre de rango.

El código de la macro es el siguiente (la celda A10 haria referencia a la primera celda del rango):

Sub RedefinirNombreRango()
Range("A10").Select
ActiveCell.CurrentRegion.Name = "NombreRango"
End Sub
Hasta la próxima!