/ / Faili direktorijā programmā Excel VBA

Faili direktorijā programmā Excel VBA

Tālāk mēs apskatīsim programmu programmā Excel VBA ka cilpas caur visām slēgtām darbgrāmatām un darblapām iekšā katalogs, un parāda visus vārdus.

Lejupielādējiet Book1.xls, Book2.xls, Book3.xls, Book4.xls un Book5.xls un pievienojiet tos "C: test"

Situācija:

Faili kataloga piemērā

Komandas pogai pievienojiet šādas koda rindiņas:

1. Pirmkārt, mēs deklarējam divus mainīgā lielumus tipa String, darblapas objektu un divus mainīgā lieluma tipus: vesels skaitlis.

Dim directory As String, fileName As String, sheet As Worksheet, i As Integer, j As Integer

2. Lai izvairītos no ekrāna mirgošanas, izslēdziet ekrāna atjaunināšanu.

Application.ScreenUpdating = False

3. Inicializējiet mainīgo direktoriju. Mēs izmantojam funkciju Dir, lai atrastu pirmo * .xl ?? šajā direktorijā saglabāts fails.

directory = "c:test"
fileName = Dir(directory & "*.xl??")

Piezīme. Dir funkcija atbalsta vairāku rakstzīmju (*) un vienkrāsainu (?) Aizstājējzīmju izmantošanu, lai meklētu visus cita veida Excel failus.

4. Mainīgais faila nosaukums tagad satur pirmā Excel faila nosaukumu, kas atrodams direktorijā. Pievienojiet celiņu, kamēr cikls.

Do While fileName <> ""

Loop

Pievienojiet cilpai šādas koda līnijas (pie 5, 6, 7, 8 un 9).

5. Inicializējiet mainīgā lieluma tipu Integer un pievienojiet Excel faila nosaukumu pirmajā rindas i slejā.

i = i + 1
j = 2
Cells(i, 1) = fileName

6. Nav vienkāršs veids, kā iegūt datus (vai lapu nosaukumus) no aizvērtiem Excel failiem. Tāpēc mēs atveram Excel failu.

Workbooks.Open (directory & fileName)

7. Pievienojiet visus Excel faila lapas nosaukumus citām i rindas kolonnām.

For Each sheet In Workbooks(fileName).Worksheets
    Workbooks("files-in-a-directory.xls").Worksheets(1).Cells(i, j).Value = sheet.Name
    j = j + 1
Next sheet

8. Aizveriet Excel failu.

Workbooks(fileName).Close

9. Dir funkcija ir īpaša funkcija. Lai iegūtu citus Excel failus, jūs varat izmantot funkciju Dir atkal bez argumentiem.

fileName = Dir()

Piezīme. Ja faili neatbilst nevienam failam, funkcija Dir atgriež nulles garuma virkni (""). Rezultātā Excel VBA pametīs Do Kausa cilpu.

10. Ieslēdziet ekrāna atjaunināšanu (ārpus cilpas).

Application.ScreenUpdating = True

11. Pārbaudiet programmu.

Rezultāts:

Faili direktorijā programmā Excel VBA

Lasīt arī: