Terri tiene una macro que se ejecuta automáticamente cuando se abre una hoja de trabajo.

Una cosa que hace es mostrar la primera hoja de trabajo en el libro de trabajo, que generalmente se llama «Consolidado». Esto funciona muy bien, a menos que la primera hoja de trabajo no tenga este nombre. Luego, Terri debe recordar cambiar la macro para especificar un nombre de hoja de trabajo diferente. Se pregunta si hay alguna manera de escribir su macro para que siempre se muestre la primera hoja de trabajo, independientemente de su nombre.

Normalmente, como Terri alude, mostraría una hoja de trabajo dada usando su nombre en la declaración, de esta manera:

Worksheets("Consolidated").Activate

Esto funciona muy bien, siempre que haya una hoja de trabajo con este nombre (Consolidado) en el libro de trabajo. Mostrar una hoja de trabajo en particular (como la primera en el libro de trabajo) cuando no sabe cuál podría ser el nombre de esa hoja de trabajo tiene un enfoque diferente.

La respuesta simple es comenzar a consultar la hoja de trabajo usando su posición dentro de la colección de Hojas de trabajo. Todas las hojas de trabajo de un libro pertenecen a una colección de objetos de hoja de trabajo. Esta colección (curiosamente) se conoce como la colección de Hojas de trabajo. Puede hacer referencia a una hoja de trabajo individual en la colección por su nombre (como se hizo en el ejemplo anterior) o puede hacer referencia a ellas utilizando un número de índice dentro de la colección. Por ejemplo, puede activar la primera hoja de trabajo de la colección de esta manera:

Worksheets(1).Activate

Usando este método, realmente no importa cuál sea el nombre de la primera hoja de trabajo; fácilmente podría ser «Consolidado» o algún otro nombre.

Excel activa diligentemente la primera hoja de trabajo del libro.

La única vez que esto no funcionaría es si la primera hoja de trabajo en su libro de trabajo está oculta. Si la hoja de trabajo no está visible, Excel automáticamente (después de la ejecución de esta declaración) muestra la primera hoja de trabajo visible.

Tenga en cuenta que esto muestra la primera pestaña de la hoja de trabajo (más a la izquierda) en el libro de trabajo. Si, en cambio, desea mostrar la primera hoja de trabajo creada en un libro de trabajo, independientemente de su posición, puede probar un enfoque diferente. Cada hoja de trabajo tiene (a falta de un término mejor) un «nombre de código» detrás de escena. Estos nombres en clave deberían sonar familiares; son Hoja1, Hoja2, Hoja3, etc. Estos nombres se conservan aunque puede cambiar el nombre de la hoja de cálculo o cambiar la posición de las pestañas. Si desea mostrar la primera hoja de trabajo creada (nuevamente, independientemente de la posición), puede intentar lo siguiente:

Sheet1.Activate

Hay una advertencia a esto: es posible que el nombre del código de sus hojas de trabajo haya sido cambiado, si escribe el código de programación para hacerlo.

Si ese es el caso, es posible que la declaración anterior no proporcione los resultados deseados. (Las pruebas siempre son una buena idea.)

_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 (12272) se aplica a Microsoft Excel 2007, 2010, 2013 y 2016.

Puede encontrar una versión de este consejo para la interfaz de menú anterior de Excel aquí:

link: / excel-Visualización_la_primera_hoja_de_trabajo_en_una_macro [Visualización de la primera hoja de trabajo en una macro].