In questo tutorial imparerai come ottenere i nomi di tutti i file in una cartella e inserirli in un foglio di lavoro.
Invece, se vuoi imparare come verificare se un file esiste, puoi fare clic su questo link: Esiste un file VBA
Utilizzo di FileSystemObject per ottenere l'elenco dei file in una cartella
VBA ti consente di elencare tutti i file da una cartella, usando il FileSystemOggetto.
Mostreremo come ottenere un elenco di file nella cartella C:\Cartella VBA e inseriscilo nella prima colonna del foglio di lavoro. Questa cartella è composta da 5 file, come mostrato nell'immagine 1:
Immagine 1. File nella cartella C:\Cartella VBA
Ecco il codice:
1234567891011121314151617181920 | Sub LoopThroughFiles ()Dim oFSO come oggettoDim oFolder As ObjectDim oFile As ObjectDim i As IntegerImposta oFSO = CreateObject("Scripting.FileSystemObject")Imposta oFolder = oFSO.GetFolder ("Cartella C:\VBA")Per ogni oFile in oFolder.FilesCells(i + 1, 1) = oFile.Nameio = io + 1File successivoFine sottotitolo |
Nell'esempio, creare prima un oggetto della classe Scripting.FileSystemObject:
1 | Imposta oFSO = CreateObject("Scripting.FileSystemObject") |
Quindi imposta la cartella usando il metodo OttieniCartella:
1 | Imposta oFolder = oFSO.GetFolder ("Cartella C:\VBA") |
Ciclo successivo attraverso ogni file in oCartella, usando oFile.Nome a ottieni il nome di ogni file nella cartella e scrivilo nella riga vuota successiva:
123456 | Per ogni oFile in oFolder.FilesCells(i + 1, 1) = oFile.Nameio = io + 1File successivo |
Immagine 2. Foglio di lavoro con l'elenco dei file nella cartella
Come puoi vedere nell'immagine 2, tutti e 5 i file dalla cartella C:\VBA sono elencati nella prima colonna.