Ebben az oktatóanyagban megtudhatja, hogyan kaphatja meg a mappában található összes fájl nevét, és hogyan helyezheti el őket egy munkalapba.
Ehelyett, ha szeretné megtudni, hogyan ellenőrizheti, hogy létezik -e fájl, kattintson erre a linkre: VBA fájl létezik
A FileSystemObject használata a mappában lévő fájlok listájának lekéréséhez
A VBA lehetővé teszi az összes fájl listázását egy mappából a FileSystemObject.
Megmutatjuk, hogyan szerezheti be a mappában található fájlok listáját C: \ VBA mappa és tegye a munkalap első oszlopába. Ez a mappa 5 fájlból áll, amint az az 1. képen látható:
1. kép: Fájlok a C mappában: \ VBA mappa
Itt a kód:
1234567891011121314151617181920 | Sub LoopThroughFiles ()Dim oFSO mint objektumA mappát halványítsa objektumkéntDim oFile objektumkéntDim i As IntegerSet oFSO = CreateObject ("Scripting.FileSystemObject")Az oFolder = oFSO.GetFolder beállítása ("C: \ VBA mappa")Minden oFile In oFolder.FilesSejtek (i + 1, 1) = oFile.Namei = i + 1Következő oFileEnd Sub |
A példában először hozzon létre egy osztályt az osztályból Scripting.FileSystemObject:
1 | Set oFSO = CreateObject ("Scripting.FileSystemObject") |
Ezután állítsa be a mappát a módszerrel GetFolder:
1 | Az oFolder = oFSO.GetFolder beállítása ("C: \ VBA mappa") |
Következő ciklus az egyes fájlokban o Mappa, segítségével oFájl. Név szerezze be a mappa minden fájljának nevét, és írja be a következő üres sorba:
123456 | Minden oFile In oFolder.FilesSejtek (i + 1, 1) = oFile.Namei = i + 1Következő oFile |
2. kép. Munkalap a mappában található fájlok listájával
Amint a 2. képen látható, a C: \ VBA mappa mind az 5 fájlja szerepel az első oszlopban.