Importujte listy pomocí Excelu VBA - Easy Excel Makra

Obsah

Níže se podíváme na program v Excel VBA že importuje listy z jiných souborů aplikace Excel do jednoho souboru aplikace Excel.

Stáhněte si Book4.xlsx, Book5.xlsx a přidejte je do „C: \ test \“

Situace:

Do příkazového tlačítka přidejte následující řádky kódu:

1. Nejprve deklarujeme dvě proměnné typu String, objekt listu a jednu proměnnou typu Integer.

Dim adresář jako řetězec, název souboru jako řetězec, list jako list, celkem jako celé číslo

2. Vypněte aktualizaci obrazovky a zobrazování výstrah.

Application.ScreenUpdating = False
Application.DisplayAlerts = False

3. Inicializujte adresář proměnných. Pomocí funkce Dir najdeme první *.xl ?? soubor uložený v tomto adresáři.

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

Poznámka: Funkce Dir podporuje použití zástupných znaků s více znaky (*) a jedním znakem (?) K vyhledávání všech různých typů souborů aplikace Excel.

4. Proměnná název_souboru nyní obsahuje název prvního souboru aplikace Excel nalezeného v adresáři. Přidejte smyčku Do While.

Dělat při název_souboru „“
Smyčka

Do smyčky přidejte následující řádky kódu (na 5, 6, 7 a 8).

5. Neexistuje jednoduchý způsob kopírování listů z uzavřených souborů aplikace Excel. Proto otevíráme soubor aplikace Excel.

Sešity. Otevřeno (adresář a název souboru)

6. Importujte listy ze souboru aplikace Excel do souboru import-sheet.xlsm.

Pro každý list v sešitech (název_souboru). Pracovní listy
celkem = sešity ("import-sheets.xlsm"). Worksheets.count
Sešity (název souboru). Pracovní listy (název listu). Kopie _
po: = Sešity ("import-sheets.xlsm"). Pracovní listy (celkem)
Další list

Vysvětlení: proměnná celkem sleduje celkový počet pracovních listů souboru import-sheet.xlsm. Metodu Copy objektu List používáme ke zkopírování každého listu a jeho vložení za poslední list importu-listů.xlsm.

7. Zavřete soubor aplikace Excel.

Sešity (název souboru). Zavřít

8. Funkce Dir je speciální funkcí. Chcete -li získat další soubory aplikace Excel, můžete znovu použít funkci Dir bez argumentů.

název_souboru = Dir ()

Poznámka: Pokud se neshodují žádné další názvy souborů, funkce Dir vrátí řetězec nulové délky (""). V důsledku toho Excel VBA opustí smyčku Do While.

9. Zapněte aktualizaci obrazovky a znovu zobrazujte výstrahy (mimo smyčku).

Application.ScreenUpdating = True
Application.DisplayAlerts = True

10. Otestujte program.

Výsledek:

Vám pomůže rozvoji místa, sdílet stránku s přáteli

wave wave wave wave wave