Preencher a planilha com arquivos dentro de uma pasta

1

Eu preciso gerenciar muitos arquivos dentro da pasta relacionada a um projeto, no momento em que esses arquivos residem no Dropbox. Então, eu gostaria de encontrar uma maneira em que eu possa ter uma planilha se preencher com os nomes dos arquivos dentro da pasta, dessa forma eu posso adicionar colunas com comentários, datas, status, etc. relacionados a esses arquivos, e pode facilmente gerenciar quais têm certas condições que tornam prontos para os próximos passos.

Pode ser que os arquivos também sejam adicionados ou removidos da pasta.

Existe uma maneira de conseguir isso através do Excel ou talvez do Google Spreadsheet? Não é um problema se o repositório de arquivos for Dropbox, OneDrive, Google Drive, etc., desde que tenha a opção de compartilhamento.

Obrigado,

    
por orlando lopez 28.01.2016 / 05:09

1 resposta

0

Duas maneiras rápidas de começar (você provavelmente desejará expandir isso para facilitar a atualização).

Usando o CMD e o comando DIR, você pode obter rapidamente uma lista básica de arquivos com os quais pode começar a trabalhar. Use o seguinte comando:

dir /b > output.csv

Comoalternativa(comovocêdesejaatualizaralistaetrabalharcomela),eucoloqueiumexemplorápidodeVBA.Claro,podehaveralteraçõesquevocêprecisafazer,masaquiestáumabase:

SubPopulateRows()DimobjFSO,objFolder,colFiles,objFile,FindValueSetobjFSO=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

Esse é o nome do arquivo, tamanho, data de criação e data de modificação.

Observe que o VBA adicionará novos arquivos, mas não possui lógica para remover itens, portanto, talvez seja necessário alterá-lo, se você usá-lo.

Não tenho certeza se isso será útil para você, mas espero que você tenha algumas ideias.

    
por 28.01.2016 / 07:01