Kopírovanie údajov z viacerých hárkov do rovnakého stĺpca sa niekedy stáva rutinou. Tomuto kroku sa dá vyhnúť pomocou automatizácie. Ak chcete vytvoriť konsolidovaný hárok po skopírovaní údajov zo stĺpca každého hárka do jedného listu, mali by ste si prečítať tento článok.
V tomto článku vytvoríme makro na kopírovanie údajov z konkrétneho stĺpca a vloženie do nového hárka.
Surové údaje pre tento príklad pozostávajú z údajov o zamestnancoch vo forme zošita programu Excel obsahujúceho tri listy s rezortnými, osobnými a kontaktnými údajmi zamestnancov.
Na kopírovanie údajov z rôznych hárkov do nového hárka sme vytvorili makro „CopyColumns“. Toto makro je možné spustiť kliknutím na tlačidlo „Spustiť makro“ na hárku „Hlavné“.
Makro „CopyColumns“ vloží za hárok „Main“ nový hárok s názvom „Master“. „Hlavný“ hárok bude obsahovať konsolidované údaje zo všetkých hárkov.
Vysvetlenie kódu
Worksheets.Add (po: = pracovné listy ("hlavné"))
Vyššie uvedený kód sa používa na vloženie nových pracovných hárkov za „hlavný“ pracovný hárok.
Ak Source.Name "Master" a Source.Name "Main" Potom
Koniec Ak
Vyššie uvedený kód sa používa na obmedzenie kópie údajov z listu „Master“ a „Main“.
Source.UsedRange.Copy Destination.Columns (Last)
Vyššie uvedený kód sa používa na kopírovanie údajov zo zdrojového listu do cieľového listu.
Pre každý zdroj v tejto pracovnej knihe. Pracovné listy
Ak Source.Name = "Master" Potom
MsgBox „Hlavný hárok už existuje“
Ukončiť sub
Koniec Ak
Ďalšie
Vyššie uvedený kód sa používa na kontrolu, či hárok „Master“ už v zošite existuje. Makro zastaví vykonávanie, ak hárok „Hlavný“ už v zošite existuje.
Pri kódovaní postupujte podľa nižšie uvedených pokynov
Možnosť Explicitné čiastkové stĺpce kopírovania () Dim zdroj ako pracovný hárok Dim cieľ ako pracovný hárok Dim trvať ako dlhá Application.ScreenUpdating = False 'Kontrola, či hárok „Master“ už v zošite existuje pre každý zdroj v ThisWorkbook.Worksheets If Source.Name = „Master“ Potom MsgBox „Hlavný hárok už existuje“ Ukončiť Sub End If Next 'Vkladanie nových pracovných hárkov do zošita Nastaviť cieľ = Pracovné listy.Pridať (po: = Pracovné listy ("Hlavné"))' Premenovanie pracovného listu Cieľ.Name = "Master" 'Opakovanie prostredníctvom pracovných hárkov v zošite pre každý zdroj v tejto pracovnej knihe. Pracovné listy ak Source.Name "Master" a Source.Name "Main" Then 'Nájdenie posledného stĺpca z cieľového listu Last = Destination.Range ("A1"). SpecialCells ( xlCellTypeLastCell). Stĺpec Ak posledný = 1 Potom 'Vloženie údajov do cieľového listu Source.UsedRange.Copy Destination.Columns (Last) Else Source.UsedRange.Copy Destination.Columns (Last + 1) End If End If Next Columns.AutoFit Application.ScreenUpdating = True End Sub
Ak sa vám tento blog páčil, zdieľajte ho so svojimi priateľmi na Facebooku. Môžete nás tiež sledovať na Twitteri a Facebooku.
Budeme radi, ak sa nám ozvete, dajte nám vedieť, ako môžeme zlepšiť našu prácu a zlepšiť ju pre vás. Napíšte nám na emailovú stránku