¿Cómo listar todas las carpetas y subcarpetas en Excel?
Al trabajar con tareas de gestión de directorios o archivos, es posible que necesite obtener rápidamente un listado completo de todas las carpetas y subcarpetas dentro de un directorio específico y visualizar esa información directamente en Excel. Por desgracia, Excel no incluye una función integrada ni un asistente sencillo para recuperar automáticamente todos los nombres de carpetas y subcarpetas de una ruta de archivo determinada. Este artículo presenta un código VBA que le permite listar todas las carpetas y subcarpetas de cualquier directorio que elija directamente en su hoja de cálculo, minimizando el riesgo de errores humanos y eliminando tareas tediosas para ayudarle a gestionar y supervisar eficazmente la organización de sus datos.
Utilice código VBA para listar todas las carpetas y subcarpetas
Utilice código VBA para listar todas las carpetas y subcarpetas
Si desea extraer y mostrar todas las carpetas y subcarpetas de un directorio especificado en Excel, utilizar VBA (Visual Basic para Aplicaciones) es una solución eficaz. Este enfoque le brinda flexibilidad y control total, permitiéndole obtener no solo los nombres de las carpetas, sino también información adicional como la ruta del archivo, las fechas de creación y las fechas de última modificación. Es especialmente adecuado para usuarios familiarizados con las funciones del modo Desarrollador de Excel y para quienes gestionan sistemas de archivos dinámicos o que cambian con frecuencia.
1. Pulse ALT + F11 para abrir el editor de "Microsoft Visual Basic para Aplicaciones". Esta herramienta le permite añadir y editar macros en su libro.
2. En el editor de VBA, haga clic en Insertar > Módulo. Esto abrirá una nueva ventana de módulo. Copie y pegue el siguiente código en ella:
Código VBA: Listar todas las carpetas y subNombre de carpetas
Sub FolderNames()
'Updateby Extendoffice
Application.ScreenUpdating = False
Dim xPath As String
Dim xWs As Worksheet
Dim fso As Object, j As Long, folder1 As Object
With Application.FileDialog(msoFileDialogFolderPicker)
.Title = "Choose the folder"
.Show
End With
On Error Resume Next
xPath = Application.FileDialog(msoFileDialogFolderPicker).SelectedItems(1) & "\"
Application.Workbooks.Add
Set xWs = Application.ActiveSheet
xWs.Cells(1, 1).Value = xPath
xWs.Cells(2, 1).Resize(1, 5).Value = Array("Path", "Dir", "Name", "Date Created", "Date Last Modified")
Set fso = CreateObject("Scripting.FileSystemObject")
Set folder1 = fso.getFolder(xPath)
getSubFolder folder1
xWs.Cells(2, 1).Resize(1, 5).Interior.Color = 65535
xWs.Cells(2, 1).Resize(1, 5).EntireColumn.AutoFit
Application.ScreenUpdating = True
End Sub
Sub getSubFolder(ByRef prntfld As Object)
Dim SubFolder As Object
Dim subfld As Object
Dim xRow As Long
For Each SubFolder In prntfld.SubFolders
xRow = Range("A1").End(xlDown).Row + 1
Cells(xRow, 1).Resize(1, 5).Value = Array(SubFolder.Path, Left(SubFolder.Path, InStrRev(SubFolder.Path, "\")), SubFolder.Name, SubFolder.DateCreated, SubFolder.DateLastModified)
Next SubFolder
For Each subfld In prntfld.SubFolders
getSubFolder subfld
Next subfld
End Sub
3. Tras insertar el código, pulse F5 o haga clic en el botón Ejecutar del editor de VBA para ejecutar la macro. Aparecerá un cuadro de diálogo Elegir carpeta que le pedirá que seleccione el directorio de destino que desea analizar en busca de carpetas y subcarpetas.

4. Seleccione el directorio deseado y haga clic en Aceptar. La macro procesará el directorio y generará una nueva lista de libros con todas las carpetas y subcarpetas, incluyendo sus rutas completas, directorio padre inmediato, nombres, fechas de creación y fechas de última modificación, tal como se muestra a continuación:

Algunos consejos prácticos y observaciones para utilizar este código:
- Si la estructura de su directorio es muy extensa, la macro puede tardar un tiempo en procesar todas las carpetas. Tenga paciencia durante la ejecución y evite interrumpir el proceso.
- El método VBA requiere que las macros estén habilitadas; de lo contrario, el código no se ejecutará correctamente. Si recibe advertencias de seguridad, revise la configuración del Centro de confianza en las Opciones de Excel.
- Si selecciona accidentalmente la carpeta incorrecta, simplemente vuelva a ejecutar la macro y elija el directorio correcto.
- Este enfoque muestra únicamente la información de carpetas y subcarpetas; si también necesita incluir archivos, consulte el artículo relacionado a continuación para descubrir más opciones.
- Si varios usuarios comparten el libro, recuérdeles que deben tener las macros habilitadas en sus propios equipos para aprovechar esta funcionalidad dinámica de listado.
- Si el libro generado aparece en blanco o incompleto, asegúrese de que el directorio seleccionado no esté vacío y de que cuente con los permisos de lectura adecuados. En el caso de estructuras de carpetas especialmente profundas o complejas, verifique los límites de recursos de su sistema y, si es necesario, considere procesarlas por lotes o en subdirectorios.
Esta solución VBA es flexible, no requiere complementos adicionales ni software externo y genera automáticamente un libro de salida para mayor comodidad. No obstante, está especialmente indicada para usuarios familiarizados con operaciones básicas de macros y podría necesitar ajustes adicionales para personalizaciones específicas.
Artículo relacionado:
¿Cómo listar los archivos de un directorio en una hoja de cálculo de Excel?
Las mejores herramientas de productividad para Office
Potencie sus habilidades en Excel con Kutools para Excel y experimente una eficiencia como nunca antes.Kutools para Excel ofrece más de 300 funciones avanzadas para aumentar su productividad y Ahorrar tiempo.Haga clic aquí para obtener la función que más necesita...
Office Tab aporta una interfaz con pestañas a Office y hace que su trabajo sea mucho más fácil
- Active la edición y lectura con pestañas en Word, Excel, PowerPoint, Publisher, Access, Visio y Project.
- Abra y cree varios documentos en nuevas pestañas dentro de la misma ventana, en lugar de hacerlo en ventanas separadas.
- ¡Aumente su productividad en un 50 % y elimine cientos de clics del ratón cada día!
Todos los complementos de Kutools en un solo instalador.
Kutools for Office es la suite que incluye complementos para Excel, Word, Outlook y PowerPoint, además de Office Tab Pro, ideal para equipos que trabajan en distintas aplicaciones de Office.
- Suite integral— complementos para Excel, Word, Outlook y PowerPoint + Office Tab Pro
- Un instalador, una licencia— configuración en minutos (compatible con MSI)
- Rendimiento mejorado en conjunto— productividad optimizada en todas las aplicaciones de Office
- Prueba gratuita de 30 días con todas las funciones— sin registro ni tarjeta de crédito
- La mejor relación calidad-precio— ahorre frente a la compra individual de complementos