- Näidekoodid kopeeritakse andmebaasilehele nimega Sheet2.
- Iga kord, kui käivitate mõne alamosa, paigutatakse lahtrid viimase reaga andmete alla või pärast viimast veergu, kus on andmed lehel2.
- Iga näite puhul on makro, mis teeb tavalise koopia, ja üks, mis on ainult väärtuste kopeerimine.
- Näitealamid kasutavad alltoodud funktsioone (makrod ei tööta ilma funktsioonideta).
Alam CopyRow () Dim sourceRange As Range Dim dimrange As Range Dim Lr As Long Lr = LastRow (Sheets ("Sheet2")) + 1 Set sourceRange = Sheets ("Sheet1"). Rid ("1: 1") Set destrange = Arvutustabelid ("leht 2"). Ridad (Lr) sourceRange.Copy destrange End Sub Sub CopyRowValues () Dim sourceRange As Range Dim destrange As Range Dim Lr As Long Lr = LastRow (Sheets ("Sheet2")) + 1 Set sourceRange = Sheets ("Sheet1"). Ridad ("1: 1") Määra destrange = Sheets ("Sheet2"). Rivid (Lr). _ Suuruse muutmine (sourceRange.Rows.Count) destrange.Value = sourceRange.Value Lõpp Alamfunktsioon LastRow (sh töölehena) Viga Tõrge Jätka järgmist LastRow = sh.Cells.Find (Mis: = "*", _ Pärast: = sh. Vahemik ("A1"), _ Lookat: = xlPart, _ LookIn: = xlFormulas, _ SearchOrder: = xlByRows, _ SearchDirection: = xlPrevious, _ MatchCase: = False). Tööleht) On Error Resume Next Lastcol = sh.Cells.Find (What: = "*", _ After: = sh.Range ("A1"), _ Lookat: = xlPart, _ LookIn: = xlFormulas, _ SearchOrder: = xlByColumns, _ SearchDirection: = xlPrevious, _ MatchCase: = False). Veerg On Error GoTo 0 End Function