Llenar hoja de cálculo con archivos dentro de una carpeta

Llenar hoja de cálculo con archivos dentro de una carpeta

Necesito administrar muchos archivos dentro de una carpeta relacionada con un proyecto; por el momento, estos archivos residen en Dropbox. Entonces, me gustaría encontrar una manera en la que pueda hacer que una hoja de cálculo se complete con los nombres de los archivos dentro de la carpeta, de esa manera puedo agregar columnas con comentarios, fechas, estados, etc. relacionados con estos archivos, y puedo Administre fácilmente cuáles tienen ciertas condiciones que los preparan para sus próximos pasos.

Podría darse el caso de que también se agreguen o eliminen archivos de la carpeta.

¿Hay alguna manera de lograr esto a través de Excel o quizás de la hoja de cálculo de Google? No hay problema si el repositorio de archivos es Dropbox, OneDrive, Google Drive, etc. siempre que tenga opción para compartir.

Gracias,

Respuesta1

Dos formas rápidas de comenzar (probablemente querrás ampliarlas para permitir una actualización más sencilla).

Usando CMD y el comando DIR, puede obtener rápidamente una lista básica de archivos con los que puede comenzar a trabajar. Utilice el siguiente comando:

dir /b > output.csv

ingrese la descripción de la imagen aquí

ingrese la descripción de la imagen aquí

Alternativamente (como desea poder actualizar la lista y trabajar con ella), he elaborado un ejemplo rápido de VBA. Por supuesto, es posible que tengas que hacer modificaciones, pero aquí tienes una base:

Sub PopulateRows()
    Dim objFSO, objFolder, colFiles, objFile, FindValue
    Set objFSO = CreateObject("Scripting.FileSystemObject")

    Set objFolder = objFSO.GetFolder("C:\Users\Jonno\Dropbox\Public")
    Set colFiles = objFolder.Files

    Dim curRow

    curRow = FindFirstEmptyRow

    For Each objFile In colFiles
        Set FindValue = Range("A:A").Find(objFile.Name)
        If FindValue Is Nothing Then
            Range("A" & curRow).Value = objFile.Name
            Range("B" & curRow).Value = objFile.Size
            Range("C" & curRow).Value = objFile.DateCreated
            Range("D" & curRow).Value = objFile.DateLastModified
            curRow = curRow + 1
        End If
    Next
End Sub

Function FindFirstEmptyRow()
    Dim curRow
    curRow = 1
    Do
        If IsEmpty(Range("A" & curRow).Value) Then
            FindFirstEmptyRow = curRow
            Exit Function
        End If
        curRow = curRow + 1
    Loop
End Function

ingrese la descripción de la imagen aquí

ingrese la descripción de la imagen aquí

Ese es el nombre del archivo, el tamaño, la fecha de creación y la fecha de modificación.

Tenga en cuenta que VBA agregará nuevos archivos, pero actualmente no tiene lógica para eliminar elementos, por lo que es posible que deba modificarlo si lo usa.

No estoy seguro de si esto le será útil, pero espero que le dé algunas ideas.

información relacionada