您的瀏覽器不支援JavaScript功能,若網頁功能無法正常使用時,請開啟瀏覽器JavaScript狀態
Antfire 的生活雜記
Skip
    banner

    Excel列出所有目錄

    Excel列出所有目錄

    使用Excel VBA

    1. 開啟Visual Basic編輯畫面

      img-2023-05-03_10-01-20.jpg
    2. 在工具列選擇插入→模組或從左側專案視窗中按滑鼠右鍵然後再選擇插入→模組

      img-2023-05-03_10-03-56.jpg
    3. 複製以下程式碼後,再到新增的模組貼上程式碼

      Public Function GetDirectories(ByVal sourceDir As String)
      
      Set fso = CreateObject("Scripting.FileSystemObject")
       
      Set F = fso.GetFolder(sourceDir)
      
      GetDirectories = Application.WorksheetFunction.Transpose(Map(F.SubFolders))
      
      
      End Function
      
      Function Map(ByVal A As Variant) As Variant
      
          Dim MyDynArr() As String
              Dim i As Integer
              i = 0
            For Each fc In A
            ReDim Preserve MyDynArr(i)
            MyDynArr(i) = fc.Name
            Debug.Print fc.Name
            i = i + 1
          Next fc
          Map = MyDynArr
      End Function
    4. 貼上程式碼後,存檔

      img-2023-05-03_10-06-41.jpg
    5. 回到工作表,到要呈現目錄的欄位,輸入公式=GetDirectories(A1)

      img-2023-05-03_10-19-43.jpg

    如果想要列出檔案,可以參考這篇文章 Excel中列出某個目錄底下所有檔案

     Comments