VBA -lista filer i mapp

I den här självstudien lär du dig hur du får namn på alla filer i en mapp och lägger dem i ett kalkylblad.

Om du istället vill lära dig att kontrollera om det finns en fil kan du klicka på den här länken: VBA -fil finns

Använda FileSystemObject för att hämta listan över filer i en mapp

Med VBA kan du lista alla filer från en mapp med hjälp av FileSystemObject.

Vi kommer att visa hur du får en lista med filer i mappen C: \ VBA -mapp och lägg den i den första kolumnen i kalkylbladet. Denna mapp består av 5 filer, som visas i bild 1:

Bild 1. Filer i mapp C: \ VBA -mapp

Här är koden:

1234567891011121314151617181920 Sub LoopThroughFiles ()Dim oFSO som objektDim oFolder som objektDim oFile Som objektDim i As IntegerAnge oFSO = CreateObject ("Scripting.FileSystemObject")Ange oFolder = oFSO.GetFolder ("C: \ VBA -mapp")För varje oFIL I oFolder.FilesCeller (i + 1, 1) = oFile.Namei = i + 1Nästa filAvsluta Sub

I exemplet, skapa först ett objekt i klassen Scripting.FileSystemObject:

1 Ange oFSO = CreateObject ("Scripting.FileSystemObject")

Ställ sedan in mappen med metoden GetFolder:

1 Ange oFolder = oFSO.GetFolder ("C: \ VBA -mapp")

Nästa slinga igenom varje fil i oMapp, använder sig av oFile.Name till få namnet på varje fil i mappen och skriv den i nästa tomma rad:

123456 För varje oFIL I oFolder.FilesCeller (i + 1, 1) = oFile.Namei = i + 1Nästa fil

Bild 2. Arbetsblad med listan över filer i mappen

Som du kan se i bild 2 listas alla fem filer från mappen C: \ VBA i den första kolumnen.

wave wave wave wave wave