fbpx

¿Cómo listar archivos de una carpeta en Excel mediante Macros?

En Excel, existen varias formas de listar los archivos de una carpeta. Una forma es hacerlo manualmente, utilizando el Explorador de archivos de Windows. Sin embargo, esta puede ser una tarea tediosa y repetitiva, especialmente si la carpeta contiene muchos archivos.
Otra forma de listar los archivos de una carpeta es utilizar una macro. Las macros son secuencias de comandos que se pueden utilizar para automatizar tareas en Excel.
En este tutorial, veremos cómo crear una macro para listar los archivos de una carpeta.
Para crear la macro, debemos abrir el Editor de Visual Basic para Aplicaciones (VBA). Para ello, siga estos pasos:
  1. En Excel, haga clic en la pestaña Desarrollador.
  2. En el grupo Macros, haga clic en Grabar macro.
  3. En el cuadro de diálogo Grabar macro, escriba un nombre para la macro en el campo Nombre de la macro.
  4. En el campo Asignar a, seleccione Personalizadas.xlsm.
  5. En el campo Comandos rápidos, escriba un atajo de teclado para la macro.
  6. Haga clic en Aceptar.
  7. Ahora que hemos creado la macro, podemos agregar el código que la hará funcionar.

Código VBA

				
					Sub ListarArchivos()

Dim objFSO As Object
Dim objFolder As Object
Dim objFile As Object
Dim i As Integer

'Crear el objeto FileSystem Object
Set objFSO = CreateObject("Scripting.FileSystemObject")

'Definir la ruta dela carpeta
Ruta_Carpeta = Sheets("inicio").Range("c5").Value

Set objFolder = objFSO.getfolder(Ruta_Carpeta)

'Definir donde vamos a listar los archivos y sus propiedades
Sheets("lista archivos").Select
Columns("A:D").ClearContents

'Escribir el For Each que me permite recorrer cada uno de los archivos dentro de la carpeta
i = 2
    For Each objFile In objFolder.Files
        Cells(1, 1) = "Nombre Archivos"
        Cells(1, 2) = "Tamaño"
        Cells(1, 3) = "Fecha de Creación"
        Cells(1, 4) = "Fecha de Modificación"
        Cells(i, 1) = objFile.Name
        Cells(i, 2) = objFile.Size
        Cells(i, 3) = objFile.DateCreated
        Cells(i, 4) = objFile.DateLastModified
        
        i = i + 1
    
    Next

'Liberar memoria

Set objFolder = Nothing
Set objFSO = Nothing

MsgBox "Se listaron todos los archivos de la carpeta seleccionada", vbInformation, "Macro Listar Archivos"


End Sub
				
			

Cómo ejecutar la MACRO:

Una vez que hayamos agregado el código a la macro, podemos ejecutarla. Para ello, siga estos pasos:

  1. En el Editor de Visual Basic para Aplicaciones, haga clic en el botón Ejecutar.
  2. En el cuadro de diálogo Ejecutar macro, seleccione la macro que desea ejecutar.
  3. Haga clic en Aceptar.
  4. La macro listará los archivos de la carpeta especificada en la columna A de la hoja de trabajo especificada.

Uso de la MACRO

Esta macro se puede utilizar para una variedad de propósitos, como:

  1. Listar todos los archivos de una carpeta para realizar un seguimiento de ellos.
  2. Generar un informe de los archivos de una carpeta.
  3. Crear un catálogo de archivos.
  4. Por ejemplo, podemos utilizar esta macro para generar un informe de los archivos de una carpeta de imágenes. El informe podría incluir el nombre del archivo, la fecha de creación y el tamaño del archivo.
Esperamos que te haya servido nuestra ayuda.

Saludos

Ignacio – Fundador de Expertos de Excel

¿Quieres aprender más?

Mira nuestros cursos increíbles cursos

¡SUSCRIBETE A NUESTRO CONTENIDO GRATUITO Y RECIBE INCREIBLES DESCUENTOS!

* Recibirás nuestras guías gratis en tu email