V tem članku bomo ustvarili makro za zbiranje podrobnosti o vseh datotekah v mapi.
Preden zaženemo makro, moramo v besedilno polje podati pot do mape.
Ko zaženete makro, bo vrnil ime datoteke, pot datoteke, velikost datoteke, datum ustvarjanja in datum zadnje spremembe vseh datotek v mapi.
Logična razlaga
V tem članku smo ustvarili dva makra »ListFilesInFolder« in »TestListFilesInFolder«.
Makro »ListFilesInFolder« bo prikazal podrobnosti o vseh datotekah v mapi.
Makro »TestListFilesInFolder« se uporablja za podajanje glave in klicanje makra »ListFilesInFolder«.
Razlaga kode
Nastavite FSO = CreateObject ("Scripting.FileSystemObject")
Zgornja koda se uporablja za ustvarjanje novega predmeta predmeta datotečnega sistema.
Nastavi izvorno mapo = FSO.GetFolder (izvorno ime mape)
Zgornja koda se uporablja za ustvarjanje predmeta mape, ki jo določa pot.
Celice (r, 1). Formula = FileItem.Name
Celice (r, 2). Formula = FileItem.Path
Celice (r, 3). Formula = FileItem.Size
Celice (r, 4). Formula = FileItem.DateCreated
Celice (r, 5). Formula = FileItem.DateLastModified
Zgornja koda se uporablja za pridobivanje podrobnosti o datotekah.
Za vsako podmapo v izvorni mapi.podmape
'Klicanje istega postopka za podmape
ListFilesInFolder SubFolder.Path, True
Naslednja podmapa
Zgornja koda se uporablja za pridobivanje podrobnosti o vseh datotekah v podmapah.
Stolpci ("A: E"). Izberite
Selection.ClearContents
Zgornja koda se uporablja za brisanje vsebine iz stolpcev A do E.
Za kodo sledite spodaj
Možnost Explicit Sub ListFilesInFolder (ByVal SourceFolderName As String, ByVal IncludeSubfolders as Boolean) 'Razglasitev spremenljivk Dim FSO kot Object Dim SourceFolder kot Object Dim SubFolder kot Object Dim FileItem As Object Dim r As Long' Ustvarjanje predmeta FileSystemObject Set F .FileSystemObject ") Nastavi izvorno mapo = FSO.GetFolder (izvorno ime mape) r = obseg (" A65536 "). Konec (xlUp). Vrstica + 1 za vsak element datoteke v izvorni mapi. Lastnosti datotek za prikaz celic Celice (r, 1). Celice FileItem.Name (r, 2) .Formula = FileItem.Path Cells (r, 3) .Formula = FileItem.The Cells (r, 4) .Formula = FileItem.DateCreated celice (r, 5) .Formula = FileItem. DateLastModified r = r + 1 Next FileItem 'Pridobivanje datotek v podmape, če vključi podmape, nato za vsako podmapo v izvorni mapi.Spoklice mapa pokliče isti postopek za podmape ListFilesInFolder Podmapa. Pot, True Naslednja podmapa, če je nastavljena FileItem = nič nastavljena SourceFolder = nič nastavljeno FSO = Nič ActiveWorkbook.Saved = True End Sub Sub TestListFilesInFolder () "Razglasitev spremenljivke Dim FolderPath kot niz" Onemogočanje posodobitev zaslona Application.ScreenUpdating = False "Pridobivanje poti mape iz polja z besedilom FolderPath = Sheet1.TextBox1.Value ActiveSheet.Activate" Brisanje vsebine iz stolpcev A: E Stolpci ("A: E"). Izberite Selection.ClearContents 'Dodajanje glav Obseg ("A14"). Formula = "Ime datoteke:" Obseg ("B14"). Formula = "Pot:" Obseg ("C14"). Formula = "Velikost datoteke:" Obseg ("D14"). Formula = "Datum ustvarjanja:" Obseg ("E14"). Formula = "Datum zadnje spremembe:" 'Oblikovanje obsega glav ("A14: E14"). Pisava .Bold = True 'Klicni seznam mapov ListFilesInFolder ListFilesInFolder FolderPath, True' Samodejno prilagajanje velikosti stolpcev Stolpci ("A: E"). Izberite Selection.Columns.AutoFit Range ("A1"). Izberite End Sub
Če vam je bil ta blog všeč, ga delite s prijatelji na Facebooku. Prav tako nam lahko sledite na Twitterju in Facebooku.
Radi bi slišali od vas, nam sporočite, kako lahko izboljšamo svoje delo in ga izboljšamo za vas. Pišite nam na spletnem mestu e -pošte