Dim lastrow&, lastCol&, myarray As Range
lastrow = Range("A1").End(xlDown).Row
lastCol = Range("XX1").End(xlToLeft).Column
Set myarray = Range("A1").Resize(lastrow, lastCol)
Range("A1", myarray).Select
Selection.Copy
В общем, я пытаюсь выбрать массив, который может варьироваться, я знаю, что он начинается с A1, но я не уверен, в какой строке и столбце он закончится. Код выше работает нормально, чтобы помочь скопировать этот массив.
Application.CutCopyMode = False
Selection.Copy
Application.WindowState = xlNormal
Windows("macrofile.xlsm").Activate
Sheets("MRG").Select
'has to find the last row by itself
Range("A" & Rows.Count).End(xlUp).Offset(2, 0).Select
ActiveCell.PasteSpecial (xlPasteAll)
Я получаю сообщение об ошибке в последней строке ActiveCell.PasteSpecial (xlPasteAll)
.
Ошибка 1004, невозможно вставить, потому что область копирования и область вставки не совпадают
Я пробовал разные варианты, включая активный лист. Вставить и xlpastevalues безрезультатно.
Range("A" & Rows.Count).End(xlUp).Offset(2, 0).Select
выбирает одну ячейку в столбце A, чтобы найти последнюю использованную строку, и смещает ее на 2 строки, чтобы я мог вставить ее под существующие данные. Не уверен, почему возникает ошибка 1004, потому что репликация выбора массива и вставка его в одну ячейку в Excel не запускает ошибок.
Любая помощь очень ценится; Я действительно новичок в VBA, и большая часть этого кода пришла из разных источников онлайн.