Kopioi solut ActiveCell -riviltä tietokanta -taulukkoon käyttämällä Microsoft Excelin VBA: ta

Sisällysluettelo

Microsoft Excelissä voimme kopioida solut aktiivisoluriviltä tietylle taulukolle. Tässä artikkelissa käytämme VBA -koodia tietojen siirtämiseen jokaiselta taulukolta ja yhdistämme tiedot yhdeksi laskentataulukkoksi. Lisäämme työkirjaan pääarkin ja tallennamme määritetyn alueen tiedot yhdelle arkille.

Esimerkkikoodit kopioidaan tietokanta -arkille, jonka nimi on Sheet2. Joka kerta, kun suoritamme makroa, solut sijoitetaan viimeisen rivin alle, jossa on tietoja taulukon 2 viimeisen sarakkeen jälkeen. Tämä makro kopioi solut sarakkeista A, D ActiveCellistä.

Alla on kuva näytetiedoista:

Solujen kopioiminen aktiivisoluriviltä taulukkoon2; meidän on noudatettava alla olevia ohjeita VB -editorin käynnistämiseksi:

  • Napsauta Kehittäjä -välilehteä
  • Valitse koodiryhmästä Visual Basic

  • Napsauta Lisää ja sitten Moduuli

  • Tämä luo uuden moduulin
  • Syötä seuraava koodi standardimoduuliin
Sub CopyCells () Dim sourceRange As Range Dim dimrange as Range Dim Lr As Long Lr = LastRow (Sheets ("Sheet2")) + 1 Set sourceRange = Sheets ("Sheet1"). Solut (_ ActiveCell.Row, 1). ("A1: D1") Aseta destrange = Sheets ("Sheet2"). Alue ("A" ja 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"). Solut (_ ActiveCell.Row, 1). ("A1: D1") SourceRange -asetuksella destrange = Sheets ("Sheet2"). Alue ("A" _ & Lr) .Resize (.Rows.Count, .Columns.Count) Päättyy destrange.Value = sourceRange.Value End Sub 
Toiminto LastRow (sh laskentataulukkona) Virheessä Jatka Seuraava LastRow = sh.Cells.Find (Mitä: = "*", _ Jälkeen: = sh.Range ("A1"), _ Lookat: = xlPart, _ LookIn: = xlFormulas , _ SearchOrder: = xlByRows, _ SearchDirection: = xlEdellinen, _ MatchCase: = False). 
Toiminto Lastcol (sh laskentataulukkona) Virhe Jatka Seuraava Lastcol = sh.Cells.Find (Mitä: = "*", _ Jälkeen: = sh.Range ("A1"), _ Lookat: = xlPart, _ LookIn: = xlFormulas , _ SearchOrder: = xlByColumns, _ SearchDirection: = xlEdellinen, _ MatchCase: = False) .Column On Error GoTo 0 End Function 

  • Tarkista yllä oleva VBA -koodi; lisää tietoja alueelle "A1: D1" ja suorita sitten makro painamalla F5 -pikanäppäintä
  • Määritetylle alueelle tallennetut tiedot kopioidaan taulukkoon 2 alkaen A1: stä

  • Jos suoritamme tämän makron uudelleen; tiedot tallennetaan seuraavalle riville; katso alla oleva kuva:

  • Voimme muuttaa yllä olevan makron vaihteluväliä vaatimuksemme mukaan

Johtopäätös: Yllä olevan makron avulla voimme kopioida solut aktiivisoluriviltä uudelle arkille käyttämällä VBA -koodia.

Jos pidit blogistamme, jaa se ystävillesi Facebookissa. Voit myös seurata meitä Twitterissä ja Facebookissa.

Haluaisimme kuulla sinusta, kerro meille, kuinka voimme parantaa, täydentää tai innovoida työtämme ja parantaa sitä sinulle. Kirjoita meille sähköpostitse

Tulet auttaa kehittämään sivuston jakaminen sivu ystävillesi

wave wave wave wave wave