Kopioi sarake tai sarakkeet tietokanta -taulukkoon Microsoft Excelin VBA: n avulla

Anonim
  • Esimerkkikoodit kopioidaan tietokanta -arkille, jonka nimi on Sheet2.
  • Aina kun suoritat jonkin aliosista, solut sijoitetaan viimeisen rivin alle, jossa on tietoja, tai viimeisen sarakkeen jälkeen, jossa on tietoja taulukossa2.
  • Jokaisessa esimerkissä on makro, joka tekee normaalin kopion, ja yksi, joka on vain Kopioi arvot.
  • Esimerkkialit käyttävät alla olevia toimintoja (makrot eivät toimi ilman toimintoja).

Muista, että Excelissä on vain 256 saraketta

Sub CopyColumn () Dim sourceRange As Range Dim destrange As Range Dim Lc kuten Integer Lc = Lastcol (Sheets ("Sheet2")) + 1 Set sourceRange = Sheets ("Sheet1"). Sarakkeet ("A: A") Aseta destrange = Sheets ("Sheet2"). Sarakkeet (Lc) sourceRange.Copy destrange End Sub Sub CopyColumnValues ​​() Dim sourceRange As Range Dim destrange As Range Dim Lc As Integer Lc = Lastcol (Sheets ("Sheet2")) + 1 Aseta sourceRange = Sheets ("Sheet1"). Sarakkeet ("A: A") Aseta destrange = Sheets ("Sheet2"). Sarakkeet (Lc). _ Muuta kokoa (, sourceRange.Columns.Count) destrange.Value = sourceRange.Value End End -toiminto LastRow (sh laskentataulukkona) Virheessä Jatka Seuraava LastRow = sh.Cells.Find (What: = "*", _ After: = sh .Range ("A1"), _ Lookat: = xlPart, _ LookIn: = xlFormulas, _ SearchOrder: = xlByRows, _ SearchDirection: = xlEdellinen, _ MatchCase: = False) .Row On Error GoTo 0 End Function Function Lastcol (sh Laskentataulukkona) Virheessä Jatka Seuraava Lastcol = sh.Cells.Find (What: = "*", _ After: = sh.Range ("A1"), _ Lookat: = xlPart, _ LookIn: = xlFormulas, _ SearchOrder: = xlByColumns, _ SearchDirection: = xlEdellinen, _ MatchCase: = False). Column On Error GoTo 0 End Function