




Mediante funciones personalizadas (UDF) podemos obtener la lista de nombres de las hojas Excel.

- CREAR LA FUNCIÓN
Abrir Excel en el libro deseado.
Pulsar la tecla Alt y mantener pulsada / Pulsar la tecla F11. Mostrará el editor de Visual Basic.
Ir a: Barra de Menú / Insertar / Módulo. Mostrará la ventana del módulo donde escribimos la función.
Escribir el código:
Public Function NombreHojas()
Dim Arr() As String
Dim I As IntegerReDim Arr(Sheets.Count - 1)
For I = 0 To Sheets.Count - 1
Arr(I) = Sheets(I + 1).Name
Next I
NombreHojas = Application.WorksheetFunction.Transpose(Arr)
End Function
Guardar el libro con la extensión *.xlsm. Libro habilitado para macros.
- EJECUTAR LA FUNCIÓN
Ir a la celda deseada. Donde insertar las lista con el nombre de las hojas.
Seleccionar un rango con el número de celda igual o mayor al número de hojas.
Escribir:
=NombreHojas()O tambíén, Ir a: Barra de fórmulas / Clic sobre fx (Insertar función) / Ir a: O seleccionar una categoría / Seleccionar: Definida por el usuario / Doble clic sobre: Num_CaracteresEspacios. Mostrará la ventana del argumentos de la función.
Pulsar el botón Aceptar. Inserta la función en la primera celda seleccionada.
Pulsar la tecla F2, para editar la fórmula / Pulsar la tecla Control y mantenerla pulsada / Pulsar la tecla Mayús. y mantener las 2 teclas pulsadas / Pulsar la tecla Enter. Insertará la fórmula entre llaves como matricial {=NombreHojas()}.

Mostrará el listado de todas las hojas y en las celdas extras el error #N/A. Las hojas nuevas insertadas no se actualizarán.
