Bruce tiene un rango con nombre (Cuenta) definido en un libro de trabajo y se pregunta cómo acceder y usar ese rango con nombre desde una macro. Hay varias formas de acceder al rango, utilizando el objeto Rango o la colección de Nombres.

Para acceder al rango con nombre usando el objeto Range, todo lo que necesita hacer es proporcionar el nombre del rango como parámetro del objeto. Este nombre es el mismo que definió en Excel. Por ejemplo, la siguiente línea podría usarse para cambiar el color interior de toda la gama:

Worksheets("Sheet1").Range("Account").Interior.Color = vbYellow

Tenga en cuenta que el objeto Range se utiliza en relación con una hoja de trabajo en particular, en este caso Sheet1. También puede definir un objeto de rango dentro de VBA y luego asignarlo para que sea igual al rango con nombre, de esta manera:

Set rng = Worksheets("Sheet1").Range("Account")

El otro método de usar el rango con nombre es usar la colección de Nombres. La siguiente línea volverá a establecer el color interior de la gama en amarillo:

Workbooks("Book1.xls").Names("Account").RefersToRange.Interior.Color = vbYellow

Tenga en cuenta que la colección de Nombres es relativa a todo el libro de trabajo, por lo que no es necesario saber con qué hoja de trabajo está asociado el rango nombrado cuando usa este método de acceso. También puede definir un objeto de rango en VBA y asignarlo para que sea el mismo que el rango con nombre:

Set rng = Workbooks("Book1.xls").Names("Account").RefersToRange

Debe saber que el método de recopilación de nombres para acceder a un rango con nombre solo será viable si no tiene el mismo rango con nombre definido en diferentes hojas de trabajo en el libro de trabajo. Si lo hace, deberá utilizar el método de objeto Range, que requiere el uso de un nombre de hoja de trabajo específico en la referencia.

_Nota: _

Si desea saber cómo usar las macros descritas en esta página (o en cualquier otra página de los sitios ExcelTips), he preparado una página especial que incluye información útil.

link: / excelribbon-ExcelTipsMacros [Haga clic aquí para abrir esa página especial en una nueva pestaña del navegador].

ExcelTips es su fuente de formación rentable en Microsoft Excel.

Este consejo (3106) se aplica a Microsoft Excel 97, 2000, 2002 y 2003. Puede encontrar una versión de este consejo para la interfaz de cinta de Excel (Excel 2007 y posterior) aquí:

link: / excelribbon-Using_Named_Ranges_in_a_Macro [Uso de rangos con nombre en una macro].