Access穫取指定的文件夾下的所有文件夾和文件

2018-10-23 14:19:00
Henry D. Sy
原創
1616

很多時候,我們都需要穫取文件夾下的所有文件進行處理。

前麵我們分享箇一箇示例《Access穫取文件夾內的文件名及路徑》,可以穫取文件夾的文件名及路徑。

但是如果文件夾下還有文件夾,子文件夾等,卽穫取不到更下層的文件瞭。


如下圖所示,穫取Access通用平颱下的所有文件夾及文件名。



運行下麵代碼,打開文件夾選擇框:

    Dim diaFS As FileDialog
    Set diaFS = Application.FileDialog(msoFileDialogFolderPicker)
    With diaFS
        .AllowMultiSelect = False
        .Show
    End With
    If diaFS.SelectedItems.Count > 0 Then
        Me.Text0 = diaFS.SelectedItems(1)
    Else
        Me.Text0 = Null
    End If




穫取文件夾下的所有文件夾及文件名的代碼,這裡文本框爲“text0”,列錶框爲“lst1”

Private Sub Command7_Click()
    Dim fs As New FileSystemObject
    Dim fd As Folder
    Dim sfd As Folder
    If IsNull(Me.Text0) Then
        MsgBox "請輸入文件夾"
        Me.Text0.SetFocus
        Exit Sub
    End If
    Me.lst1.RowSource = ""
    Set fd = fs.GetFolder(Me.Text0)
    ListFolder fd
End Sub

Sub ListFolder(fd As Folder)
    Dim sfd As Folder
    Dim f As File
    For Each f In fd.Files
        lst1.AddItem f.Path
    Next
    For Each sfd In fd.SubFolders
        lst1.AddItem sfd.Path
        ListFolder sfd
    Next
End Sub



穫取效果如圖所示:

    分享