Ошибка периода выполнения 1004 На Копировании Данных по тому же самому учебному пособию

Я пытаюсь скопировать данные от одного листа до другого. Но я получаю Ошибку периода выполнения 1004, определенное Применение или объект определило ошибку .

Sub copycells()
    Sheets("B").Select
    Range("A2:M299").Copy
    Sheets("A").Select
    Range("E20:Q317").Select
    ActiveSheet.Paste
End Sub

Есть ли любой другой способ сделать это. Заранее спасибо

1
nl ja de
Какой ряд вы надеваете ошибку? Этот код хорошо работает для меня
добавлено автор Andrey Gordeev, источник
На линии 5 т.е. Диапазон ("E20:Q317").Select
добавлено автор Code_Kid, источник

1 ответы

Попытка:

Sub copycells()
    Sheets("A").Range("A2:M299").Copy
    Sheets("B").Range("E20:Q317").Activate
    ActiveSheet.Paste
End Sub

Вот другой метод, который даже не использует, "Активируют"

Sub CopyCellsWithoutActivate()
    Sheets(1).Range("A2:M299").Copy
    Sheets(2).Range("E20:Q317").PasteSpecial (xlPasteAll)
End Sub
1
добавлено
Как правило вы хотите избегать использования "Избранный" и "Активировать", когда это возможно. Я udpated мой оригинальный ответ со второй версией, которая еще немного более опрятна, чем первое. Достаточно странно, хотя ваш код, с ошибками для меня вчера вечером (и снова этим утром), теперь, это хорошо работает. Я все еще предлагаю использовать одно из нескольких более изящных решений, которые должны b e менее подверженный ошибке.
добавлено автор David Zemens, источник
Приятель спасибо. Это хорошо работает. Могу я знать то, что было проблемой с моим кодом
добавлено автор Code_Kid, источник