Import hárkov pomocou programu Excel VBA - ľahké makrá programu Excel

Obsah

Nižšie sa pozrieme na program v Excel VBA že importuje hárky z iných súborov programu Excel do jedného súboru programu Excel.

Stiahnite si Book4.xlsx, Book5.xlsx a pridajte ich do „C: \ test \“

Situácia:

Do príkazového tlačidla pridajte nasledujúce riadky kódu:

1. Najprv deklarujeme dve premenné typu String, objekt Worksheet a jednu premennú typu Integer.

Dim adresár As String, fileName As String, sheet As Worksheet, total As Integer

2. Vypnite aktualizáciu obrazovky a zobrazovanie upozornení.

Application.ScreenUpdating = False
Application.DisplayAlerts = False

3. Inicializujte premenný adresár. Na nájdenie prvého súboru *.xl ?? používame funkciu Dir. súbor uložený v tomto adresári.

adresár = "c: \ test \"
fileName = Dir (adresár & "*.xl ??")

Poznámka: Funkcia Dir podporuje používanie zástupných znakov s viacerými znakmi (*) a s jedným znakom (?) Na vyhľadávanie všetkých rôznych typov súborov programu Excel.

4. Premenná fileName teraz obsahuje názov prvého súboru programu Excel, ktorý sa našiel v adresári. Pridajte slučku Do While.

Vykonať pri názve súboru ""
Slučka

Do slučky pridajte nasledujúce riadky kódu (na 5, 6, 7 a 8).

5. Neexistuje jednoduchý spôsob kopírovania pracovných hárkov z uzavretých súborov programu Excel. Preto otvoríme súbor programu Excel.

Zošity. Otvorené (adresár a názov súboru)

6. Importujte listy zo súboru programu Excel do súboru import-sheet.xlsm.

Pre každý list v zošitoch (názov súboru). Pracovné listy
celkom = zošity ("import-sheets.xlsm"). Worksheets.count
Zošity (názov súboru). Pracovné listy (hárok. Názov). Kopírovať _
po: = zošity ("import-sheets.xlsm"). Pracovné listy (celkom)
Ďalší list

Vysvetlenie: premenná total sleduje celkový počet pracovných hárkov súboru import-sheet.xlsm. Na kopírovanie každého pracovného hárka používame metódu Kopírovanie objektu List a prilepujeme ho za posledný list listu import-sheets.xlsm.

7. Zatvorte súbor programu Excel.

Zošity (názov súboru). Zatvorte

8. Funkcia Dir je špeciálna funkcia. Ak chcete získať ďalšie súbory programu Excel, môžete znova použiť funkciu Dir bez argumentov.

fileName = Dir ()

Poznámka: Ak sa už žiadne názvy súborov nezhodujú, funkcia Dir vráti reťazec nulovej dĺžky (""). Výsledkom bude to, že Excel VBA opustí slučku Do While.

9. Zapnite aktualizáciu obrazovky a znova zobrazujte upozornenia (mimo slučky).

Application.ScreenUpdating = True
Application.DisplayAlerts = Pravda

10. Otestujte program.

Výsledok:

Vám pomôže rozvoju miesta, zdieľať stránku s priateľmi

wave wave wave wave wave