V programe Microsoft Excel môžeme skopírovať bunky z radu activecell na konkrétny list. V tomto článku použijeme kód VBA na prenos údajov z každého hárka a zlúčenie údajov do jedného pracovného hárka. Do zošita pridáme kmeňový list a údaje zo zadaného rozsahu uložíme do jedného listu.
Vzorové kódy sa skopírujú do databázového listu s názvom List2. Bunky budú pri každom spustení makra umiestnené pod posledný riadok s údajmi za posledným stĺpcom v hárku2. Toto makro skopíruje bunky zo stĺpca A, D z ActiveCell.
Nasleduje obrázok vzorových údajov:
Ak chcete skopírovať bunky z radu activecell do hárka 2; na spustenie editora VB musíme vykonať nasledujúce kroky:
- Kliknite na kartu Vývojár
- Zo skupiny kódov vyberte Visual Basic
- Kliknite na Vložiť a potom na Modul
- Tým sa vytvorí nový modul
- Do štandardného modulu zadajte nasledujúci kód
Sub CopyCells () Dim sourceRange As Range Dim dimrange As Range Dim Lr As Long Lr = LastRow (Sheets ("Sheet2")) + 1 Set sourceRange = Sheets ("Sheet1"). Cells (_ ActiveCell.Row, 1) .Range ("A1: D1") Nastaviť destrange = Listy ("List2"). Rozsah ("A" & Lr) sourceRange.Copy destrange End Sub
Sub CopyCellsValues () Dim sourceRange As Range Dim distrange 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 Koniec pod
Funkcia LastRow (pracovný list sh As) Pri chybe Pokračovať Ďalej LastRow = sh.Cells.Find (Čo: = "*", _ Potom: = sh.Range ("A1"), _ Lookat: = xlPart, _ LookIn: = xlFormulas , _ SearchOrder: = xlByRows, _ SearchDirection: = xlPrevious, _ MatchCase: = False). Riadok pri chybe GoTo 0 Ukončiť funkciu
Funkcia Lastcol (pracovný list sh As) Pri chybe Pokračovať Ďalej Lastcol = sh.Cells.Find (Čo: = "*", _ Potom: = sh.Range ("A1"), _ Lookat: = xlPart, _ LookIn: = xlFormulas , _ SearchOrder: = xlByColumns, _ SearchDirection: = xlPrevious, _ MatchCase: = False). Stĺpec pri chybe GoTo 0 Ukončiť funkciu
- Ak chcete skontrolovať vyššie uvedený kód VBA; pridajte údaje v rozsahu „A1: D1“ a potom spustite makro stlačením klávesovej skratky F5
- Údaje uložené v určenom rozsahu sa skopírujú do „Listu 2“ od A1
- Ak toto makro znova spustíme; údaje sa uložia v nasledujúcom riadku; pozri obrázok nižšie:
- Vo vyššie uvedenom makre môžeme zmeniť rozsah, ktorý vyhovuje našim požiadavkám
Záver: Pomocou vyššie uvedeného makra môžeme skopírovať bunky z radu activecell do nového hárka pomocou kódu VBA.
Ak sa vám páčili naše blogy, zdieľajte ich so svojimi priateľmi na Facebooku. A tiež nás môžete sledovať na Twitteri a Facebooku.
Radi by sme vás počuli, dajte nám vedieť, ako môžeme zlepšiť, doplniť alebo inovovať našu prácu a zlepšiť ju pre vás. Napíšte nám na emailovú stránku