プロジェクトに関連するフォルダー内の多数のファイルを管理する必要がありますが、現在これらのファイルは Dropbox にあります。そのため、スプレッドシートにフォルダー内のファイル名を自動的に入力する方法を見つけたいと思います。そうすれば、これらのファイルに関連するコメント、日付、ステータスなどの列を追加でき、次のステップの準備をする特定の条件を持つファイルを簡単に管理できます。
フォルダーにファイルが追加されたり、フォルダーから削除されたりする場合もあります。
Excel または Google スプレッドシートを使用してこれを実現する方法はありますか? 共有オプションがある限り、ファイル リポジトリが Dropbox、OneDrive、Google Drive などであっても問題ありません。
ありがとう、
答え1
すぐに始められる 2 つの方法 (更新を容易にするために、これらの方法を拡張する必要があるかもしれません)。
CMD と DIR コマンドを使用すると、作業を開始できるファイルの基本リストをすぐに取得できます。次のコマンドを使用します。
dir /b > output.csv
あるいは、(リストを更新して操作できるようにしたいので) 簡単な VBA の例をまとめました。もちろん、修正が必要になる場合もありますが、基本は次のとおりです。
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
ファイル名、サイズ、作成日、変更日です。
VBA は新しいファイルを追加しますが、現時点ではアイテムを削除するロジックがないため、使用する場合は修正が必要になる可能性があることに注意してください。
これがあなたにとって役に立つかどうかはわかりませんが、何かアイデアが浮かぶと幸いです。