Uvoz tablica pomoću programa Excel VBA - Jednostavne makroe programa Excel

Sadržaj

U nastavku ćemo pogledati program u Excel VBA da uvozi listove iz drugih Excel datoteka u jednu Excel datoteku.

Preuzmite Book4.xlsx, 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 jednu varijablu tipa Integer.

Dim direktorij kao niz, naziv datoteke kao niz, list kao radni list, ukupno kao cijeli broj

2. Isključite ažuriranje zaslona i prikaz upozorenja.

Application.ScreenUpdating = Netačno
Application.DisplayAlerts = 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: Funkcija Dir 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 i 8) u petlju.

5. Ne postoji jednostavan način kopiranja radnih listova iz zatvorenih Excel datoteka. Stoga otvaramo Excel datoteku.

Radne knjige.Otvoreno (imenik i ime datoteke)

6. Uvezite listove iz Excel datoteke u import-sheet.xlsm.

Za svaki list u radnim knjigama (naziv datoteke) .Radni listovi
ukupno = Radne knjige ("import-sheets.xlsm"). Radni listovi.broj
Radne knjige (naziv datoteke). Radni listovi (naziv.naloga). Kopiraj _
nakon: = Radne knjige ("import-sheets.xlsm"). Radni listovi (ukupno)
Sljedeći list

Objašnjenje: varijabla total prati ukupni broj radnih listova import-sheet.xlsm. Koristimo metodu Kopiraj objekt Radni list da bismo kopirali svaki radni list i zalijepili ga nakon zadnjeg radnog lista import-sheets.xlsm.

7. Zatvorite Excel datoteku.

Radne knjige (naziv datoteke) .Zatvori

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

naziv datoteke = Dir ()

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

9. Ponovno uključite ažuriranje zaslona i prikaz upozorenja (izvan petlje).

Application.ScreenUpdating = Istina
Application.DisplayAlerts = Istina

10. Testirajte program.

Proizlaziti:

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

wave wave wave wave wave