Datoteke u direktoriju u Excelu VBA - Jednostavne makroe Excel

Sadržaj

U nastavku ćemo pogledati program u Excel VBA da prolazi kroz sve zatvorene radne bilježnice i radne listove u imenik, i prikazuje sva imena.

Preuzmite Book1.xlsx, Book2.xlsx, Book3.xlsx, Book4.xlsx i Book5.xlsx i dodajte ih u "C: \ test \"

Situacija:

Naredbenom gumbu dodajte sljedeće retke koda:

1. Prvo deklariramo dvije varijable tipa String, objekt radnog lista i dvije varijable tipa Integer.

Dim direktorij kao niz, naziv datoteke kao niz, list kao radni list, i kao cijeli broj, j kao cijeli broj

2. Kako biste izbjegli treperenje zaslona, ​​isključite ažuriranje zaslona.

Application.ScreenUpdating = Netačno

3. Inicijalizirajte direktorij varijabli. Koristimo Dir funkciju da pronađemo prvi *.xl ?? datoteku pohranjenu u ovom direktoriju.

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

Napomena: Dir funkcija podržava korištenje zamjenskih znakova s ​​više znakova (*) i jednog znaka (?) Za traženje svih različitih vrsta Excel datoteka.

4. Varijabla fileName sada sadrži naziv prve Excel datoteke koja se nalazi u direktoriju. Dodajte petlju Do While.

Do While naziv datoteke ""
Petlja

Dodajte sljedeće linije koda (na 5, 6, 7, 8 i 9) u petlju.

5. Inicijalizirajte varijable tipa Integer i dodajte naziv Excel datoteke u prvi stupac retka i.

 i = i + 1
j = 2
Ćelije (i, 1) = naziv datoteke

6. Ne postoji jednostavan način za izdvajanje podataka (ili naziva listova) iz zatvorenih Excel datoteka. Stoga otvaramo Excel datoteku.

Radne knjige.Otvoreno (imenik i ime datoteke)

7. Dodajte sve nazive listova Excel datoteke u druge stupce redaka i.

Za svaki list u radnim knjigama (naziv datoteke) .Radni listovi
Radne knjige ("files-in-a-directory.xlsm"). Radni listovi (1). Ćelije (i, j) .Vrijednost = list.Naziv
j = j + 1
Sljedeći list

8. Zatvorite Excel datoteku.

Radne knjige (naziv datoteke) .Zatvori

9. Dir funkcija je posebna funkcija. Da biste dobili ostale Excel datoteke, možete ponovno koristiti funkciju Dir bez argumenata.

naziv datoteke = Dir ()

Napomena: kada se ne podudaraju više imena datoteka, funkcija Dir vraća niz nulte duljine (""). Kao rezultat toga, Excel VBA napustit će petlju Do While.

10. Ponovno uključite ažuriranje zaslona (izvan petlje).

Application.ScreenUpdating = Istina

11. Testirajte program.

Proizlaziti:

Vi ćete pomoći u razvoju web stranice, dijeljenje stranicu sa svojim prijateljima

wave wave wave wave wave