300 Eksempler

Filer i et bibliotek

Files Directory

Nedenfor ser vi på et program i Excel VBA at sløjfer gennem alle lukkede projektmapper og regneark i en vejviser og viser alle navnene.

Download Book1.xlsx, Book2.xlsx, Book3.xlsx, Book4.xlsx og Book5.xlsx og tilføj dem til 'C: test '



Situation:



Filer i et katalogeksempel

Tilføj følgende kodelinjer til kommandoknappen:



1. For det første erklærer vi to variabler af typen String, et regnearkobjekt og to variabler af typen Integer.

IngenvejviserSom Snor, filnavnSom Snor, arkSomArbejdsark, iSom Heltal, jSom Heltal

2. For at undgå skærmflimmer skal du slå skærmopdatering fra.

Application.ScreenUpdating =Falsk

3. Initialiser den variable mappe. Vi bruger Dir-funktionen til at finde den første * .xl ?? fil gemt i denne mappe.



mappe = 'c: test '
fileName = Dir (katalog & '* .xl ??')

Bemærk: Dir-funktionen understøtter brugen af ​​flere tegn (*) og enkelttegn (?) Jokertegn til at søge efter alle forskellige typer Excel-filer.

4. Den variable filnavn indeholder nu navnet på den første Excel-fil, der findes i biblioteket. Tilføj en Gør Mens Loop .

Gør Mensfilnavn ''

Sløjfe

Tilføj følgende kodelinjer (ved 5, 6, 7, 8 og 9) til sløjfen.

5. Initialiser variablerne af typen Heltal og tilføj navnet på Excel-filen til den første kolonne i række i.

i = i + 1
j = 2
Celler (i, 1) = filnavn

6. Der er ingen enkel måde at udtrække data (eller arknavne) fra lukkede Excel-filer. Derfor åbner vi Excel-filen.

Arbejdsbøger. Åbn (bibliotek og filnavn)

7. Føj alle arknavne på Excel-filen til de andre kolonner i række i.

Til HverarkIArbejdsbøger (filnavn). Arbejdsark
Arbejdsbøger ('filer-i-en-mappe.xlsm'). Arbejdsark (1). Celler (i, j) .Værdi = ark.navn
j = j + 1
Næsteark

8. Luk Excel-filen.

Arbejdsbøger (filnavn). Luk

9. Dir-funktionen er en speciel funktion. For at få de andre Excel-filer kan du bruge Dir-funktionen igen uden argumenter.

indlejring, hvis funktioner giver mulighed for tre eller flere resultater.
fileName = Dir ()

Bemærk: når ikke flere filnavne matcher, returnerer Dir-funktionen en streng med nul længde (''). Som et resultat forlader Excel VBA Do While-sløjfen.

10. Tænd skærmopdatering igen (uden for sløjfen).

Application.ScreenUpdating =Sand

11. Test programmet.

Resultat:

Filer i et bibliotek i Excel VBA

6/8 Færdig! Lær mere om bøger og ark>
Gå til næste kapitel: Område objekt



^