În acest tutorial, veți afla cum să obțineți numele tuturor fișierelor dintr-un folder și să le introduceți într-o foaie de lucru.
În schimb, dacă doriți să aflați cum să verificați dacă există un fișier, puteți face clic pe acest link: Fișierul VBA există
Utilizarea FileSystemObject pentru a obține lista fișierelor dintr-un folder
VBA vă permite să listați toate fișierele dintr-un folder, utilizând FileSystemObject.
Vom arăta cum să obțineți o listă de fișiere în dosar C: \ Folder VBA și puneți-o în prima coloană a foii de lucru. Acest dosar este format din 5 fișiere, așa cum se arată în imaginea 1:
Imagine 1. Fișiere din folderul C: \ Folder VBA
Iată codul:
1234567891011121314151617181920 | Sub LoopThroughFiles ()Dim oFSO Ca obiectReduceți folderul ca obiectDim oFile ca obiectDim i IntegerSetați oFSO = CreateObject ("Scripting.FileSystemObject")Setați oFolder = oFSO.GetFolder („C: \ Folder VBA”)Pentru fiecare oFile din oFolder.FilesCelule (i + 1, 1) = oFile.Namei = i + 1Următorul oFisierSfârșitul Sub |
În exemplu, creați mai întâi un obiect al clasei Scripting.FileSystemObject:
1 | Setați oFSO = CreateObject ("Scripting.FileSystemObject") |
Apoi setați folderul folosind metoda GetFolder:
1 | Setați oFolder = oFSO.GetFolder („C: \ Folder VBA”) |
Următoarea buclă prin fiecare fișier din o Dosar, folosind oFile.Nume către obțineți numele fiecărui fișier din dosar și scrieți-l în următorul rând gol:
123456 | Pentru fiecare oFile din oFolder.FilesCelule (i + 1, 1) = oFile.Namei = i + 1Următorul oFisier |
Imagine 2. Foaie de lucru cu lista de fișiere din folder
După cum puteți vedea în imaginea 2, toate cele 5 fișiere din folderul C: \ VBA sunt listate în prima coloană.