Selles artiklis loome makro, et koguda kausta kõigi failide üksikasjad.
Enne makro käivitamist peame tekstikasti kausta tee määrama.
Makro käivitamisel tagastab see kõigi kaustas olevate failide failinime, failitee, faili suuruse, loomise kuupäeva ja viimati muudetud kuupäeva.
Loogiline seletus
Selles artiklis oleme loonud kaks makrot „ListFilesInFolder” ja „TestListFilesInFolder”.
Makro „ListFilesInFolder” kuvab üksikasjad kõigi kaustas olevate failide kohta.
Makrot „TestListFilesInFolder” kasutatakse päise ja makro „ListFilesInFolder” määramiseks.
Koodi selgitus
Määra FSO = CreateObject ("Scripting.FileSystemObject")
Ülaltoodud koodi kasutatakse failisüsteemi objekti uue objekti loomiseks.
Määra SourceFolder = FSO.GetFolder (SourceFolderName)
Ülaltoodud koodi kasutatakse tee määratud kausta objekti loomiseks.
Lahtrid (r, 1). Vormel = FileItem.Name
Lahtrid (r, 2). Vormel = FileItem.Path
Lahtrid (r, 3). Vormel = FileItem.Size
Lahtrid (r, 4). Vormel = FileItem.DateCreated
Lahtrid (r, 5). Vormel = FileItem.DateLastModified
Ülaltoodud koodi kasutatakse failide üksikasjade eraldamiseks.
Iga alamkausta jaoks SourceFolder.SubFolders
'Sama protseduuri helistamine alamkaustade jaoks
ListFilesInFolder Alamkaust. Tee, tõene
Järgmine alamkaust
Ülaltoodud koodi kasutatakse alamkaustade kõigi failide üksikasjade eraldamiseks.
Veerud ("A: E"). Valige
Valik. Selge sisu
Ülaltoodud koodi kasutatakse sisu kustutamiseks veerust A kuni E.
Palun järgige koodi allpool
Valik Selgesõnaline alamloend FilesInFolder (ByVal SourceFolderName As String, ByVal IncludeS Alamkaustad kui Boolean) 'Muutujate deklareerimine Dim FSO kui Objekt Dim Lähtekaust Objektina Dim Alamkaust Objektina Dim FileItem As Objekt Dim r Nii kaua' FileSystemObjecti objekti loomine FSO = Create .FileSystemObject ") Määra SourceFolder = FSO.GetFolder (SourceFolderName) r = Vahemik (" A65536 "). Lõpp (xlUp) .Rida + 1 iga FileItem kohta SourceFolder.Files 'Kuva faili atribuudid Lahtrid (r, 1) .Formula = FileItem.Name Cells (r, 2) .Formula = FileItem.Rajarakud (r, 3) .Formula = FileItem.Size Cells (r, 4) .Formula = FileItem.DateCreated Cells (r, 5) .Formula = FileItem. DateLastModified r = r + 1 Järgmine FileItem 'Failide hankimine alamkaustadesse Kui IncludeS Alamkaustad siis iga alamkausta jaoks SourceFolder.SubFolders' Helistamine sama protseduur alamkaustade jaoks ListFilesInFolder SubFolder.Path, True Next SubFolder End If Set FileItem = Nothing Set SourceFolder = Nothing Set FSO = Pole aktiivset töövihikut. Salvestatud = tõsi End Sub Sub TestListFilesInFolder () 'Muutuja Dim FolderPath kui string deklareerimine' Ekraanivärskenduste keelamine Application.ScreenUpdating = False 'Kausta tee hankimine tekstikasti FolderPath = Sheet1.TextBox1.Value ActiveSheet.Activate' Sisu kustutamine veergudest A: E Veerud ("A: E"). Valige Selection.ClearContents 'Päiste lisamise vahemik ("A14"). Valem = "Faili nimi:" Vahemik ("B14"). Valem = "Tee:" Vahemik ("C14"). Valem. = "Faili suurus:" Vahemik ("D14"). Valem = "Loomise kuupäev:" Vahemik ("E14"). Valem = "Viimase muutmise kuupäev:" 'Päiste vahemiku vormindamine ("A14: E14"). Font .Bold = True 'Calling ListFilesInFolder macro ListFilesInFolder FolderPath, True' Veergude suuruse automaatne reguleerimine Veerud ("A: E"). Valige Selection.Columns.AutoFit Range ("A1"). Valige Lõpeta alam
Kui teile see blogi meeldis, jagage seda oma sõpradega Facebookis. Lisaks saate meid jälgida Twitteris ja Facebookis.
Tahaksime sinust kuulda, andke meile teada, kuidas saaksime oma tööd paremaks muuta ja teie jaoks paremaks muuta. Kirjuta meile meilisaidile