- Примерните кодове ще се копират в лист с база данни с името Sheet2.
- Всеки път, когато стартирате една от подгрупите, клетките ще бъдат поставени под последния ред с данни или след последната колона с данни в лист2.
- За всеки пример има макрос, който прави нормално копиране, и един, който е само Копиране на стойностите.
- Примерните подводници използват функциите по -долу (макросите няма да работят без функциите).
Sub CopyToActiveCell () Затъмняване на източника Range As Range Dim destrange As Range If Selection.Cells.Count> 1 Тогава излезте от Sub Set sourceRange = Sheets ("Sheet1"). Range ("A1: C10") Set destrange = ActiveCell sourceRange.Copy destrange End Sub Sub CopyToActiveCellValues () Dim sourceRange As Range Dim destrange As Range If Selection.Cells.Count> 1 След това излезте от Sub Set sourceRange = Sheets ("Sheet1"). Range ("A1: C10") с sourceRange Set destrange = ActiveCell.Resize _ (.Rows.Count, .Columns.Count) Край с destrange.Value = sourceRange.Value Крайна подфункция LastRow (sh като работен лист) При възобновяване на грешка Следваща LastRow = sh.Cells.Find (Какво: = "*", _ След: = sh.Range ("A1"), _ Lookat: = xlPart, _ LookIn: = xlFormulas, _ SearchOrder: = xlByRows, _ SearchDirection: = xlPrevious, _ MatchCase: = False). Функция Lastcol (sh As Worksheet) On Error Resume Next Lastcol = sh.Cells.Find (What: = "*", _ After: = sh.Range ("A1"), _ Lookat: = xlPart, _ LookIn: = xlFormulas , _ SearchOrder: = xlByColumns, _ SearchDirection: = xlPrevious, _ MatchCase: = False). Колона при грешка GoTo 0 End Function