V aplikaci Microsoft Excel můžeme zkopírovat buňky z řádku activecell na konkrétní list. V tomto článku použijeme kód VBA k přenosu dat z každého listu a sloučení dat do jednoho listu. Do sešitu přidáme vzorový list a uložíme data ze zadaného rozsahu do jednoho listu.
Ukázkové kódy se zkopírují do databázového listu s názvem Sheet2. Při každém spuštění makra budou buňky umístěny pod poslední řádek s daty za posledním sloupcem v listu2. Toto makro zkopíruje buňky ze sloupce A, D z ActiveCell.
Následuje obrázek ukázkových dat:
Kopírování buněk z řádku activecell do List2; pro spuštění VB editoru musíme provést následující kroky:
- Klikněte na kartu Vývojář
- Ze skupiny kódů vyberte Visual Basic
- Klikněte na Vložit a poté na Modul
- Tím se vytvoří nový modul
- Do standardního modulu zadejte následující kód
Sub CopyCells () Dim sourceRange As Range Dim destrange As Range Dim Lr As Long Lr = LastRow (Sheets ("Sheet2")) + 1 Set sourceRange = Sheets ("Sheet1"). Cells (_ ActiveCell.Row, 1) .Range ("A1: D1") Nastavit destrange = Sheets ("Sheet2"). Range ("A" & Lr) sourceRange.Copy destrange End Sub
Sub CopyCellsValues () Dim sourceRange As Range Dim destrange As Range Dim Lr As Long Lr = LastRow (Sheets ("Sheet2")) + 1 Set sourceRange = Sheets ("Sheet1"). Cells (_ ActiveCell.Row, 1) .Range ("A1: D1") With sourceRange Set destrange = Sheets ("Sheet2"). Range ("A" _ & Lr) .Resize (.Rows.Count, .Columns.Count) End With destrange.Value = sourceRange.Value End Sub
Funkce LastRow (pracovní list sh As) Při chybě Pokračovat Další LastRow = sh.Cells.Find (Co: = "*", _ After: = sh.Range ("A1"), _ Lookat: = xlPart, _ LookIn: = xlFormulas , _ SearchOrder: = xlByRows, _ SearchDirection: = xlPrevious, _ MatchCase: = False). Row On Error GoTo 0 End Function
Funkce Lastcol (pracovní list sh As) Při chybě Pokračovat Další Lastcol = sh.Cells.Find (Co: = "*", _ Poté: = sh.Range ("A1"), _ Lookat: = xlPart, _ LookIn: = xlFormulas , _ SearchOrder: = xlByColumns, _ SearchDirection: = xlPrevious, _ MatchCase: = False). Column On Error GoTo 0 End Function
- Chcete -li zkontrolovat výše uvedený kód VBA; přidejte data v rozsahu „A1: D1“ a poté spusťte makro stisknutím klávesové zkratky F5
- Data uložená v uvedeném rozsahu budou zkopírována na „List2“ počínaje od A1
- Spustíme -li toto makro znovu; data se uloží do dalšího řádku; viz obrázek níže:
- Ve výše uvedeném makru můžeme změnit rozsah, který vyhovuje našim požadavkům
Závěr: Pomocí výše uvedeného makra můžeme kopírovat buňky z řádku activecell na nový list pomocí kódu VBA.
Pokud se vám naše blogy líbily, sdílejte je se svými přáteli na Facebooku. A také nás můžete sledovat na Twitteru a Facebooku.
Rádi bychom od vás slyšeli, dejte nám vědět, jak můžeme zlepšit, doplnit nebo inovovat naši práci a zlepšit ji pro vás. Napište nám na e -mail