Advertisement
Guest User

Untitled

a guest
Jun 24th, 2019
83
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.08 KB | None | 0 0
  1. Option Explicit
  2.  
  3. Sub ListFoldersInDirectory()
  4.  
  5.  
  6. Dim objFSO As Object
  7. Dim objFolders As Object
  8. Dim objFolder As Object
  9. Dim strDirectory As String
  10. Dim arrFolders() As String
  11. Dim FolderCount As Long
  12. Dim FolderIndex As Long
  13.  
  14.  
  15. With Application.FileDialog(msoFileDialogFolderPicker)
  16. .InitialFileName = Application.DefaultFilePath & ""
  17. .Title = "Select Folder"
  18. .Show
  19. If .SelectedItems.Count = 0 Then
  20. Exit Sub
  21. End If
  22. strDirectory = .SelectedItems(1)
  23. End With
  24.  
  25. Set objFSO = CreateObject("Scripting.FileSystemObject")
  26. Set objFolders = objFSO.GetFolder(strDirectory).SubFolders
  27.  
  28. FolderCount = objFolders.Count
  29.  
  30. If FolderCount > 0 Then
  31. ReDim arrFolders(1 To FolderCount)
  32. FolderIndex = 0
  33. For Each objFolder In objFolders
  34. FolderIndex = FolderIndex + 1
  35. arrFolders(FolderIndex) = objFolder.Name
  36. Next objFolder
  37. Worksheets.Add
  38. Range("A1").Resize(FolderCount).Value = Application.Transpose(arrFolders)
  39. Else
  40. MsgBox "No folders found!", vbExclamation
  41. End If
  42.  
  43. Set objFSO = Nothing
  44. Set objFolders = Nothing
  45. Set objFolder = Nothing
  46.  
  47. End Sub
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement