Здравствуйте!
Excel 2016
Задача: при заполнении определённой ячейки должен запускаться макрос на копирование определённой строки с последующей вставкой (через Insert) в определённый диапазон.
Ошибка: При вводе данных в ячейку вылетает ошибка "run time error -2147417848 80010108. Method 'Insert' of object 'Range' failed" и отмечается строка кода макроса:
Range("A3").Insert
Примечание: Ошибка может проявиться не сразу и программа отработает корректно, но вводя данные в определённую ячейку ("J3") на какой-то итерации всё равно вылетает.
При исполнении макроса отдельно ошибок не возникает, отработка 100%.
Код макроса:
Скрытый текст |
---|
Sub ADD_ROW()
Range("A2:J2").Copy Range("A3").Insert
Set SourceRange = Range("A3") Set fillRange = Range("A3:A120") SourceRange.AutoFill Destination:=fillRange Range("A3:J3").Borders.Weight = 3 Range("A3:J3").Borders.Color = #de00ff Range("A4:J4").Borders.LineStyle = 1
End Sub |
Код программы:
Скрытый текст |
---|
Private Sub Worksheet_Change(ByVal Target As Range) If Not Intersect(Target, Target.Worksheet.Range("J3")) Is Nothing Then Application.EnableEvents = False If WorksheetFunction.Count(Intersect(Target, Target.Worksheet.Range("J3"))) > 0 Then ADD_ROW Application.EnableEvents = True End If End Sub |
Куда копать? Прошу помочь, спасибо.