Tento článek předvede, jak pomocí VBA zkopírovat rozsah buněk na jiný list nebo sešit.
Další informace najdete v našem kurzu VBA o kopírování a vkládání.
Kopírovat do existujícího listu
Ke zkopírování rozsahu buněk z jednoho listu na jiný list, který již existuje, můžeme použít následující kód:
123456 | Dílčí kopie a vloženíActiveSheet.Range ("A1: D10"). VyberteVýběr. KopírovatTabulky („List2“). VyberteActiveSheet.PasteEnd Sub |
Tím se zkopírují informace uložené v aktivním rozsahu listů A1: D10 a vloží se do existujícího listu2. Protože jsme v listu 2 neurčili rozsah, který se má vybrat, automaticky jej vloží do rozsahu („A1“). Rovněž vloží jakékoli formátování do listu 2, který byl v rozsahu v listu 1.
Pokud jej chceme vložit na jiné místo v Listu 2, můžeme vybrat počáteční buňku nebo rozsah, do kterého se má vložit. Níže uvedený kód vloží informace začínající v buňce E2.
1234567 | Dílčí CopyAndPasteToRangeActiveSheet.Range ("A1: D10"). VyberteVýběr. KopírovatTabulky („List2“). VyberteRozsah („E1“). VyberteActiveSheet.PasteEnd Sub |
K vložení hodnot do listu 2 a nezahrnutí formátování můžeme použít následující kód. Pokud chceme vložit do buňky A1, nemusíme znovu určovat rozsah na stránku.
123456 | Dílčí hodnoty CopyAndPasteValuesActiveSheet.Range ("A1: D10"). VyberteVýběr. KopírovatTabulky („List2“). VyberteSelection.PasteSpecial Paste: = xlPasteValuesEnd Sub |
Kopírovat do nového listu
Ke zkopírování a vložení do nového listu můžeme použít následující kód:
123456 | Dílčí kopie a vložení nového listuActiveSheet.Range ("A1: D10"). VyberteVýběr. KopírovatSheets.Add After: = ActiveSheetActiveSheet.PasteEnd Sub |
Chcete -li pouze kopírovat hodnoty, můžeme znovu použít xlPasteValues.
Zkopírovat do existujícího sešitu
Chcete -li zkopírovat a vložit do jiného sešitu úplně, můžeme buď mít oba sešity již otevřené, nebo můžeme použít kód k otevření jiného sešitu a poté vložit do tohoto sešitu.
Tento kód níže se zkopíruje do stávajícího sešitu, který je již otevřený.
1234567 | Sub CopyAndPasteExistingBookRozsah („A1: D10“). VyberteVýběr. KopírovatWindows („CombinedBranches.xlsx“). AktivujteSheets.Add After: = ActiveSheetActiveSheet.PasteEnd Sub |
Programování VBA | Generátor kódu pracuje pro vás!
Tento kód níže se zkopíruje a vloží do nového listu ve 2. sešitu, který bude otevřen kódem.
1234567 | Dílčí kopie a vložení otevřená pracovní knihaRozsah („A1: D9“). VyberteVýběr. KopírovatSešity. Otevřít název souboru: = "C: \ ExcelFiles \ CombinedBranches.xlsx"Sheets.Add After: = ActiveSheetActiveSheet.PasteKoncový list |
TIP: nahraďte název souboru v sešitech. Otevřete argument vlastním názvem souboru!
Zkopírovat do nového sešitu
Můžeme také zkopírovat a vložit do nového sešitu.
123456 | Dílčí kopie a vložení nového pracovního sešituRozsah („A1: D9“). VyberteVýběr. KopírovatSešity. PřidatActiveSheet.PasteEnd Sub |