我在共享网络上有一个文件夹。我希望每当该文件夹更新时,例如如果在该文件夹中放置了10个pdf文件,则Excel工作表中的列只需单击一次即可更新,并显示其他文件夹中上次更新文件的列数和时间。
上面只是一个场景,我必须为包含多个文件和文件夹的大数据实现这一点,最后我将在Google doc电子表格上实现它。
您需要访问文件夹目录Dir()
的内容,然后可以指定网络驱动器,例如:\\SERVER\Folder\
以下是一个让您入门的示例:
Sub GetDirectoryContents()
Dim row As Integer, Folder As String, Directory As String
Directory = "\\Your Folder\"
row = 1
Cells(row, 1) = "FileName"
Cells(row, 2) = "Size"
Cells(row, 3) = "Date/Time"
'Get Directory
Folder = Dir(Directory)
Do While Folder <> ""
row = row + 1
Cells(row, 1) = Folder
Cells(row, 2) = FileLen(Directory & Folder)
Cells(row, 3) = FileDateTime(Directory & Folder)
'Get next File
Folder = Dir()
Loop
End Sub
如果要在工作簿打开时更新此信息,可以在ThisWorkbook
模块中调用此代码:
Private Sub Workbook_Open()
GetDirectoryContents()
End Sub