Inserisci nuove righe e compila automaticamente con la formula


0

Sto cercando di inserire nuove righe se viene soddisfatta una particolare condizione. Voglio trascinare la formula dall'ultima riga alla riga inserita, ma ricevo un errore in questo modo. Di seguito è riportato il mio codice:

  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

Qual è l'errore che stai ottenendo?
CharlieRB

Stai cercando di copiare una singola colonna o l'intera riga?
Nate

Definisci una tabella in Excel e ti aiuterà - non dovrai mai trascinare le colonne - assicurati solo che tu inserisca la formula nella prima riga e assicuri anche che la colonna sia vuota in cui è inserita la formula.
Prasanna

Risposte:


0

Sembra che tu stia solo cercando di copiare una singola cella in basso di una riga. Assumerò che "ModelLastRow" è la singola cella che vuoi copiare. Ad ogni passo del ciclo, ho sfalsato ModelLastRow di uno per copiare un'altra riga.

 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

Spero che questo funzioni per te, buona fortuna!

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.