Insira novas linhas e preencha automaticamente com fórmula

Insira novas linhas e preencha automaticamente com fórmula

Estou tentando inserir novas linhas se uma condição específica for atendida. Quero arrastar a fórmula da última linha para a linha inserida, mas estou recebendo um erro ao fazer isso. Abaixo está meu código:

  For i = 1 To diff
    MsgBox ("Difference is " & diff)

    With Sheet5.Rows(ModelLastRow.Row + 1)
       .Insert Shift:=xlDown
    End With

    insertRowRange = "C" & CStr((ModelLastRow.Row))

    pasteRowRange = "C" & CStr((ModelLastRow.Row + 1))
    Range("insertRowRange").AutoFill Destination:=Range("pasteRowRange")
  Next

Responder1

Parece que você está apenas tentando copiar uma única célula em uma linha. Vou assumir que “ModelLastRow” é a única célula que você deseja copiar. A cada etapa do loop, desloco ModelLastRow em um para copiar outra linha.

 Dim ModelNextRow As Range
 MsgBox ("Difference is " & diff)
 For i = 1 To diff

     Set ModelNextRow = Union(ModelLastRow, ModelLastRow.Offset(1, 0))
     ModelLastRow.AutoFill Destination:=ModelNextRow, Type:=xlFillDefault

     Set ModelLastRow = ModelLastRow.Offset(1, 0)
   Next

 End Sub

Espero que isso funcione para você, boa sorte!

informação relacionada