Como hacer una macro para obtener lista de las hojas Existentes?

Alguien me puede ayudar Por Favor con una macro que al ejecutar me muestre la lista de las hojas existentes que tengo en ese mismo libro y que si al agregar una nueva hoja se vaya actualizando

1 Respuesta

Respuesta
1

Entra al Editor de macros (con teclas ALT + F11)

Inserta un módulo y copia allí el siguiente código:

Sub listaHojas()
'x Elsamatilde
'se guarda la lista en Hoja2, col A    'ajustar
Sheets("Hoja2").Columns("A:A").Clear   'borra datos anteriores
X = 1                                  'primer fila a utilizar
For Each sh In Sheets
    Sheets("Hoja2").Range("A" & X) = sh.Name
    X = X + 1
Next sh
End Sub

Ajusta el nombre de la hoja y la col a utilizar.

Podrás ejecutarlo desde allí mismo o volviendo a la hoja, menú Desarrollador, Macros.

Otros modos de ejecutar un código podrás encontrar en la sección COMO EJECUTAR UNA MACRO de mi sitio.

Con respecto a que se vaya actualizando la lista cuando se agrega una hoja, podrías agregar esta otra macro que se coloca en el Editor, en el objeto ThisWorkbok (o Este libro).

Private Sub Workbook_NewSheet(ByVal Sh As Object)
Sheets("Hoja2").Range("A" & Range("A" & Rows.Count).End(xlUp).Row + 1) = ActiveSheet.Name
End Sub

Se ejecutará cada vez que agregues una nueva hoja. Pero tené presente que se colocará el nombre con el que se crea (Hoja4, Hoja10, etc).

Si luego necesitas cambiarle el nombre olvidate de esto y quedate solo con la primer macro. La tendrás que ejecutar cada vez que quieras la lista actualizada.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas