Скопируйте строку и вставьте новую строку над ней. - PullRequest
0 голосов
/ 24 сентября 2019

У меня есть книга, заполненная макросами, которая отлично работала в течение нескольких месяцев, и теперь, когда пользователь использует один макрос, я получаю сообщение об ошибке (Excel не может выполнить эту задачу с доступными ресурсами).Как только я выхожу из ошибки, я получаю сообщение об ошибке (Ошибка времени выполнения «1004»: сбой метода вставки класса диапазона)

Еще одна вещь, которую я должен добавить.До того, как я получил эту ошибку, другой пользователь получил ошибку (недостаточно памяти для выполнения этого действия. Попробуйте использовать меньше данных или закрыть другие приложения. Чтобы увеличить доступность памяти, рассмотрите ....)

Основой макроса является вставка строки над строкой 6. Я посмотрел онлайн, но не смог найти решение, которое помогло.Я не думаю, что это код, вызывающий проблему, потому что я не могу вставить строку без использования макросов.

Sub NewData()

    Worksheets("Log").Rows(6).Select
    Selection.Copy
    Selection.Insert Shift:=xlUp

    Application.CutCopyMode = False
    Selection.ClearContents

    Application.Worksheets("Log").Range("N6").Select


End Sub

1 Ответ

0 голосов
/ 24 сентября 2019

Установите свой диапазон, а затем вставьте строку над ним, используя offset(-1,0).Попробуйте что-то вроде этого:

Sub insertaboverow()

    Dim rng As Range
    Set rng = Range("N6")

    If Not rng.Cells(1, 1) Is Nothing Then
        rng.Cells(1, 1).Offset(-1, 0).Rows.Insert   
    End If
End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...