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
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
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.