Zkopírujte buňky z řádku ActiveCell na list databáze pomocí VBA v aplikaci Microsoft Excel

Anonim

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