Kako našteti vse mape in podmape v Excelu?
Ste že kdaj trpeli zaradi te težave, ki vsebuje vse mape in podmape iz določenega imenika na delovni list? V Excelu ni na hiter in priročen način, da naenkrat dobite ime vseh map v določenem imeniku. Ta članek vam bo morda v pomoč pri reševanju naloge.
Seznam vseh map in podmap s kodo VBA
Seznam vseh map in podmap s kodo VBA
Če želite iz določenega imenika dobiti vsa imena map, vam bo morda v pomoč naslednja koda VBA, naredite naslednje:
1. Držite tipko ALT + F11 in odpre tipko Okno Microsoft Visual Basic for Applications.
2. Kliknite Vstavi > Moduliin prilepite naslednjo kodo v Okno modula.
Koda VBA: navedite imena vseh map in podmap
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. Nato pritisnite F5 tipko za zagon te kode in a Izberite mapo se bo odprlo okno, nato morate izbrati imenik, v katerega želite navesti imena map in podmap, glejte posnetek zaslona:
4. Kliknite OK, pot do mape in podmap, imenik, ime, datum ustvarjanja in datum zadnje spremembe pa boste dobili v novem delovnem zvezku, glejte posnetek zaslona:
Povezani članek:
Kako našteti datoteke v imeniku na delovnem listu v Excelu?
Najboljša pisarniška orodja za produktivnost
Napolnite svoje Excelove spretnosti s Kutools za Excel in izkusite učinkovitost kot še nikoli prej. Kutools za Excel ponuja več kot 300 naprednih funkcij za povečanje produktivnosti in prihranek časa. Kliknite tukaj, če želite pridobiti funkcijo, ki jo najbolj potrebujete...
Kartica Office prinaša vmesnik z zavihki v Office in poenostavi vaše delo
- Omogočite urejanje in branje z zavihki v Wordu, Excelu, PowerPointu, Publisher, Access, Visio in Project.
- Odprite in ustvarite več dokumentov v novih zavihkih istega okna in ne v novih oknih.
- Poveča vašo produktivnost za 50%in vsak dan zmanjša na stotine klikov miške za vas!