Я написал следующий макрос, чтобы вставить указанное число строк в таблицу, а затем заполнить ее, чтобы заново заполнить таблицу правильными форумными формулами.
Я не знаю, почему это происходит с ошибкой в ActiveSheet.Rows (r). Вставить с ошибкой во время выполнения 1004. Ошибка вставки класса Range.
Не могли бы вы мне помочь?
Sub SetKPIDuration()
Dim Duration As Integer, i As Integer, r As Integer
Duration = InputBox("Enter number of week for KPI to run (min 18)",
"Duration of KPI", 18)
Select Case True
Case Duration < 10
Duration = 18
GoTo IncreaseKPI
Case Duration < Application.WorksheetFunction.Max(Range("A7:A150"))
GoTo ReduceKPI
Case Else
GoTo IncreaseKPI
End Select
ReduceKPI:
Rows((Duration + 7) & ":150").Clear
Exit Sub
IncreaseKPI:
Application.ScreenUpdating = False
i = Application.WorksheetFunction.Max(Range("A7:A150"))
r = i + 7
While i < Duration
ActiveSheet.Rows(r).insert
Wend
Range("A" & (r - 1) & ":" & "M" & (r + i)).filldown
Application.CutCopyMode = False
ScreenUpdating = True
End Sub