Muchas veces necesitamos tener un índice de una lista de archivos que están en una carpeta. Como proyectos, lista de procedimientos, etc.
Para esto, lo recomendable es mantener los archivos con un nombre apropiado y luego, listar estos archivos empleando el programa Excel. Es una manera rápida para tener actualizado un archivo maestro de los demás archivos que se ordenarán.
Ejemplo 1
Para listar los archivos de una carpeta utilizando VBA, puedes utilizar la función Dir en un bucle DO.
Aquí tienes un ejemplo de código VBA que recorre una carpeta y lista los nombres de los archivos encontrados:
Sub ListarArchivos()
Dim RutaCarpeta As String
Dim NombreArchivo As String
' Especifica la ruta de la carpeta a listar
RutaCarpeta = "C:\Windows\" ' Reemplaza con la ruta de tu carpeta
' Inicializa la variable con el primer archivo en la carpeta
NombreArchivo = Dir(RutaCarpeta)
' Inicia el bucle para listar archivos
Do While NombreArchivo <> ""
'nombre del archivo (puedes modificar esto según tus necesidades)
ult = Cells(Rows.Count, 1).End(xlUp).Row + 1
Cells(ult, 1) = NombreArchivo
' Obtiene el nombre del siguiente archivo en la carpeta
NombreArchivo = Dir
Loop
End Sub
Descargar ejemplo: Listar archivos con VBA
Asegúrate de cambiar RutaCarpeta en la línea RutaCarpeta = "..." por la ruta completa de la carpeta que deseas listar.
Puedes personalizar el código para realizar otras acciones con los nombres de archivos, como almacenarlos en una matriz, o procesarlos de acuerdo a tus necesidades específicas.
Ejemplo 2
Para conseguir el orden propuesto de archivos, se necesita crear una macro de ListarArchivos.
(Para mayor visualización de la imagen, hacer click en la misma)
Es necesario saber la ruta de la carpeta donde se ordenarán los archivos. Además, se debe determinar la extensión de los archivos.
En la hoja de cálculo Hoja1 se agregarán 2 botones que generen el proceso. El primero será “Limpiar Lista”, el cual servirá para borrar todo y dejar la lista en blanco, para asegurar que no se listará por error algún archivo que no pertenece a la carpeta. El código de este botón consiste en llamar al proceso BorrarContenido.
Asimismo, se creará el segundo botón llamado “Listar”, el cual llamará a la macro ListarArchivos.
(Para mayor visualización de la imagen, hacer click en la misma)
En el caso de la macro Borrar Contenido se colocará el siguiente código:
(Para mayor visualización de la imagen, hacer click en la misma)
Hay que recalcar que de ser necesario, se puede pedir más datos del archivo. Para el presente ejercicio se le pide su tamaño con la instrucción FileLeng y su fecha de grabado con la instrucción FileDateTime.
31/07/2014 a las 1:49 pm
Por curiosidad estuve leyendo algunos de tus ejemplos, y de verdad que excelentemente bien están, hasta parece que me adivinaste el pensamiento acerca de lo que quería leer.
byte..