0
Я пытаюсь скопировать ряд ячеек в один столбец и перенести их выше в виде строки. Проблема, с которой я столкнулась, состоит в том, чтобы попытаться увеличить строки (45:45), где копируются каждая строка, иначе все строки будут перезаписаны. Когда я запускаю макрос я получаю ошибку синтаксиса на Destination: = Range линияExcel Macro Row increment
Range("A53:A63").Copy
Range("A52").Select
Selection.PasteSpecial Paste:=xlAll, Operation:=xlNone, SkipBlanks:=False _
, Transpose:=True
Range("A53:A63").Select
Application.CutCopyMode = False
Selection.EntireRow.Delete
Rows("52:52").Cut
Rows("45:45").Select
Destination:=Range("A" & Rows.Count).End(xlDown).Offset(1, 0)
Selection.Insert
С Rows.Count вы начинаете снизу, поэтому нет места, где можно пойти с xlDown. Изменить 'End (xlDown)' на 'End (xlUp)' –
Кроме того, я настоятельно рекомендую вам [избегать использования '.Select /' .Activate'] (https://stackoverflow.com/questions/10714251/how-to- избегать использования-select-in-excel-vba-macros), так как это может вызвать непредвиденные проблемы, но также может значительно сократить и подтянуть ваш код. – BruceWayne
@ScottCraner - Даже с вашим предложением я все еще получаю синтаксическую ошибку в строке назначения – Tori