Hoe alle mappen en submappen in Excel weer te geven?
Heeft u ooit last gehad van dit probleem waarbij alle mappen en submappen van een opgegeven map in een werkblad worden weergegeven? In Excel is er geen snelle en handige manier om de naam van alle mappen in een specifieke map tegelijk te krijgen. Dit artikel kan u helpen om met de taak om te gaan.
Maak een lijst van alle mappen en submappen met VBA-code
Maak een lijst van alle mappen en submappen met VBA-code
Als u alle mapnamen uit een opgegeven map wilt ophalen, kan de volgende VBA-code u helpen, doe dit als volgt:
1. Houd de ALT + F11 toetsen, en het opent de Microsoft Visual Basic for Applications-venster.
2. Klikken Invoegen > Moduleen plak de volgende code in het Module Venster.
VBA-code: maak een lijst van alle mappen en submappen
Sub FolderNames()
'Update 20141027
Application.ScreenUpdating = False
Dim xPath As String
Dim xWs As Worksheet
Dim fso As Object, j As Long, folder1 As Object
With Application.FileDialog(msoFileDialogFolderPicker)
.Title = "Choose the folder"
.Show
End With
On Error Resume Next
xPath = Application.FileDialog(msoFileDialogFolderPicker).SelectedItems(1) & "\"
Application.Workbooks.Add
Set xWs = Application.ActiveSheet
xWs.Cells(1, 1).Value = xPath
xWs.Cells(2, 1).Resize(1, 5).Value = Array("Path", "Dir", "Name", "Date Created", "Date Last Modified")
Set fso = CreateObject("Scripting.FileSystemObject")
Set folder1 = fso.getFolder(xPath)
getSubFolder folder1
xWs.Cells(2, 1).Resize(1, 5).Interior.Color = 65535
xWs.Cells(2, 1).Resize(1, 5).EntireColumn.AutoFit
Application.ScreenUpdating = True
End Sub
Sub getSubFolder(ByRef prntfld As Object)
Dim SubFolder As Object
Dim subfld As Object
Dim xRow As Long
For Each SubFolder In prntfld.SubFolders
xRow = Range("A1").End(xlDown).Row + 1
Cells(xRow, 1).Resize(1, 5).Value = Array(SubFolder.Path, Left(SubFolder.Path, InStrRev(SubFolder.Path, "\")), SubFolder.Name, SubFolder.DateCreated, SubFolder.DateLastModified)
Next SubFolder
For Each subfld In prntfld.SubFolders
getSubFolder subfld
Next subfld
End Sub
3. Druk vervolgens op F5 sleutel om deze code uit te voeren, en een Kies de map venster zal verschijnen, dan moet je de map selecteren waarvan je de map- en submapnamen wilt weergeven, zie screenshot:
4. Klikken OK, en je krijgt het pad, de map, de naam, de aanmaakdatum en de laatste gewijzigde datum van de map en submappen in een nieuwe werkmap, zie screenshot:
Gerelateerd artikel:
Hoe bestanden in een map naar een werkblad in Excel weergeven?
Beste Office-productiviteitstools
Geef uw Excel-vaardigheden een boost met Kutools voor Excel en ervaar effici毛ntie als nooit tevoren. Kutools voor Excel biedt meer dan 300 geavanceerde functies om de productiviteit te verhogen en tijd te besparen. Klik hier om de functie te krijgen die u het meest nodig heeft...
Office-tabblad Brengt een interface met tabbladen naar Office en maakt uw werk veel gemakkelijker
- Schakel bewerken en lezen met tabbladen in Word, Excel, PowerPoint in, Publisher, Access, Visio en Project.
- Open en maak meerdere documenten in nieuwe tabbladen van hetzelfde venster in plaats van in nieuwe vensters.
- Verhoogt uw productiviteit met 50% en vermindert honderden muisklikken voor u elke dag!